Jquery next()问题

时间:2010-01-18 20:46:33

标签: jquery

我有这个:

<div class="selection">
 <a class="current" href="#">1</a>
 <div class="class">text</div>
 <a href="#">2</a>
 <div class="class">text</div>
 <a href="#">4</a>
 <div class="class">text</div>
 <a href="#">5</a>
</div>

我想在a.current之后选择下一个元素。 我这样做了,但它确实有效。

...

$(".selection a.current").next("a").hide();

我也试过

$(".selection").children("a.current").next("a").hide();

... 不是所有的内部.selection兄弟,因此可以使用next()选择器访问?我想知道,因为当我删除它们之间的div元素时它会起作用。

如果有人知道为什么这不起作用会很棒;)。

2 个答案:

答案 0 :(得分:10)

来自jQuery API browser

  

立即获得兄弟姐妹   匹配集中的每个元素   元素,可选地由a过滤   选择器。

这不是紧随其后的兄弟姐妹。您可以尝试使用nextAll并添加:first选择器:

$(".selection a.current").nextAll("a:first").hide();

答案 1 :(得分:4)

尝试:

.nextAll("a:first");

并获得前一个:

.prevAll("a:first");

在线演示:http://jsbin.com/ayasa