如何使用jQuery在相同的兄弟元素中获取嵌套元素的DOM位置?

时间:2012-05-16 00:38:29

标签: jquery dom

如何获取相对于下面示例中的文档的第三个列表项的确切DOM路径?

<body>
    <ul>
        <li>Content</li>
        <li>Content</li>
        <li>Content</li>
        <li>Content</li>
        <li>Content</li>
    </ul>
</body>

如果没有在列表项目中或与列表项目有任何独特之处可以区别于其他项目,除了它在其他项目中的位置(第三项)之外,如何做到这一点。此外,这需要在click事件中动态获取,因此它可能是第二个列表项,或者第四个等等。

我有什么选择?谢谢你的帮助。

4 个答案:

答案 0 :(得分:2)

您可以使用eq()

   var $elem = $('ul:eq(0)').find('li:eq(2)');

您可以使用index()方法:

   $elem.click(function(){
      var ind = $(this).index();
   });

http://jsfiddle.net/s5XH2/

答案 1 :(得分:1)

这个jquery检索第三个LI:

$('ul li:nth-child(3)')

请在此处查看:http://jsfiddle.net/VnRjq/

答案 2 :(得分:1)

您可以使用.index()来检索所点击元素的索引。

查看工作示例 - http://jsfiddle.net/Hxwkp/

答案 3 :(得分:0)

$("body ul li:eq(2)").bind("click",function(){
    //
});