以下是我们的html:
<div>
<div>
...SOME CONTENT...
<div><img class="open-inhalt"></div>
</div>
<div>
...SOME MORE CONTENT...
</div>
<div>在这里我们的jQuery:
$('.open-inhalt')
.click(function(){
$('SOME MORE CONTENT DIV').animate({'height': 0}, 500);
})我们如何选择包含'...some更多内容.‘的div而不必给它分配一个id或类?HTML是在整个网页中重复出现的一种常见模式,但始终具有不同的ids。
提前感谢您的帮助!
发布于 2013-12-06 00:34:16
如果每种情况下的html结构都是相同的(如上面所述),那么您可以执行以下操作:
$('.open-inhalt').on('click', function() {
var somemorediv = $(this).parent().parent().next();
somemorediv.animate({'height': 0}, 500);
});此外,我建议将隐藏的内容设置为:none,然后使用somemorediv.slideDown(500)显示,其中500是以毫秒为单位的滑动时间长度。要隐藏内容,可以使用.slideUp(500)。
发布于 2013-12-06 00:22:43
我不确定如何在jQuery中这样做,但是对于原生JS,您只需使用nextSibling方法。这样你就可以得到父母,得到nextSibling,然后得到孩子(如果必要的话)
我相信你可以很容易地找到jQuery语法来完成同样的事情,通过快速的谷歌搜索。
编辑:看起来使用jQuery非常容易,您可以随时指定您想要的下一个DIV。http://api.jquery.com/next-siblings-selector/
发布于 2013-12-06 00:22:57
可以使用Node.parentNode或Node.parentElement获取父节点/元素。对于在某个节点之后获取元素,可以使用Node.nextSibling。
https://stackoverflow.com/questions/20413542
复制相似问题