在jQuery中获得下一个兄弟的最干净的方法
http://jsfiddle.net/mplungjan/H9Raz/
经过下一次(’a’)等测试后,我终于找到了一个有效的测试。 我只是想知道为什么下一个(’a’)没有,或者最接近或类似。 在我单击的复选框后,是否有更简洁的方法来获取链接的href?
$('form input:checkbox').click(function () { alert($(this).nextAll('a').attr("href")); });
详细说明上述评论:
你不能写:
你可以写:
-
Arend建议,
next().next()
。 这可能是最快的解决方案,但它使得
元素成为强制性的。 -
nextAll("a")
,但可以返回多个元素(并且将使用您的标记示例)。 链接到first()会阻止它,但nextAll()仍然必须迭代所有下一个兄弟,这可能会使它变慢,这取决于你的元素内的标记的复杂性。
-
nextUntil("a").last().next()
,它只迭代下一个兄弟,直到找到一个链接,然后返回匹配的最后一个元素的直接下一个兄弟。 它可能比nextAll()
更快,这取决于你的标记。
或者,您可以使用jQuery内置函数.siblings()
下面的代码对我有用
$(’#id~iframe’);