这就是我所拥有的:
$("#comment").next().attr('shown',0).fadeIn();
我正在尝试显示隐藏在页面上的下一条评论。但是,我试图一次显示两条评论,所以如果你点击第一条,第二条就是下一条。所以我给出了显示的属性。我想选择属性为shown=0
的 NEXT 。以上不起作用。我相信它会是next(tr[shown=0])
但是我无法让它工作(我正在寻找下一行的表格)
任何帮助表示赞赏!
答案 0 :(得分:11)
next
只能返回下一个兄弟。
您可以使用nextAll
选择器调用:first
,返回所有后续兄弟姐妹,以获得第一个匹配的:[/ p>
$(...).nextAll("tr[shown=0]:first")
答案 1 :(得分:2)
我知道这是一个老帖子,但只是按照标题,第一个答案就把我扔了。但是@SLaks的回答正是我个人想要解决的问题。
在发现这篇文章的过程中,这实际上帮助了我在一个完全不同的情况下出了很多。这个答案是他回答中提到的最好的答案。
我遇到的问题类似于下面的内容,我必须从特定属性中选择,以便获得具有相似属性名称但价值不同的下一个属性。
<div class="blah" data-field="sometext" data-index="0"></div>
<div class="bar"></div>
<div class="blah" data-field="sometext" data-index="1"></div>
$("div[data-field='sometext'][data-index='0']")
.nextAll("div[data-field='sometext']:first");
以上返回
<div class="blah" data-field="sometext" data-index="1"></div>
希望这可以帮助别人,因为它帮助了我
答案 2 :(得分:1)
SLaks答案可行,但我认为不会在HTML中使用自定义属性,因为它可能会让另一位开发人员感到困惑。像这样的东西不会使用自定义属性:
<style>
.hidden {
display:none;
}
</style>
<script>
$(document).ready(function(){
$('.showmore').click(function(){
$(this).parent().nextAll(':hidden:first').removeClass('hidden');
})
});
</script>
<div id="comments">
<div class="comment" id="comment1">
Test comment
<a href="#" class="showmore">Show More</a>
</div>
<div class="comment" id="comment2">
2nd test comment
<a href="#" class="showmore">Show More</a>
</div>
<div class="comment hidden" id="comment3">
3rd test comment
</div>
<div class="comment hidden" id="comment4">
4th test comment
</div>
</div>