jQuery:目标div的下一个示例

lo8azlld  于 2023-06-22  发布在  jQuery
关注(0)|答案(1)|浏览(143)

我试图在点击函数中定位某个div的下一个示例。
下面是一个jsfiddle:http://jsfiddle.net/wUEkE/1/
jQuery:

$(document).ready(function(){

 $(".listings-item").click(function() {
 $('.hidden').next($('.hidden').removeClass('hidden').addClass('preview-listing').hide().delay(400).fadeIn("slow"));
 $('#listings-wrap').masonry('reload');
 });

});

所以我试图实现的是通过单击.listing-item将指向.hidden的下一个示例,并更改类以在砖石网格中显示它。但是,当前,在单击时,.hidden的两个示例都被显示,而不仅仅是相关的下一个示例。我不明白为什么会这样。我很快就会将内容添加到这个相关的div中,但现在我只是想让它工作,但我不能。

syqv5f0l

syqv5f0l1#

为此,您可以使用nextAll函数,该函数返回所有下一个同级。如果你为第一个隐藏元素添加一个选择器,那么你将得到下一个相对于div的隐藏元素。
像这样:

$(this).nextAll('.hidden:first')

它在您的示例中的完整使用如下所示:

$(".listings-item").click(function() {
    $(this).nextAll('.hidden:first').removeClass('hidden').addClass('preview-listing').hide().delay(400).fadeIn("slow");
    $('#listings-wrap').masonry('reload');
});

Here is you example updated

相关问题