说我有以下标记:
<div> <h3><a href="">link I want to select</a></h3> <div> <h3><a href="">link</a></h3> </div> <h3><a href="">link I want to select</a></h3> <h3><a href="">link I want to select</a></h3> <a href="">link</a> </div>
假设以下……
>我想要找到的元素都处于相同的嵌套级别
>我可能不知道具体的嵌套元素是什么(所以不能使用特定的选择器)
…是否有一种聪明的方法来选择’第一个锚标记,以及嵌套在同一级别的所有其他锚标记’,以便它返回第1,第3和第4个链接?
更糟糕的情况是,我们需要进入并只添加特定的类到我们的HTML,但如果可以通过纯选择器完成它会很棒.
解决方法
不是一个纯粹的选择器,但如何:
var depth = $('#myanchor').parents().length; var all_at_depth = $("a").filter( function() { $(this).parents().length == depth; } );
如果有帮助,您可以使用parentsUntil()来获取#myanchor与特定父级之间的距离.