选择器问题 - 如何选择第n个孩子

时间:2013-09-10 15:47:18

标签: jquery jquery-selectors

我以为我知道这一点,显然不是。我想把这个问题分成两部分:A&乙

A)我有以下html导航,并希望为onlick事件选择第3行a。我试图使用:

$('#mainmenu:nth-child(3) a').click(function(event){... function here

但那不是选择器。

<div id="mainmenu" class="clearingfix">
                    <ul>
                        <li><a href="https://example.com/index.php/main"  class="active">Home</a></li><li><a href="https://example.com/index.php/reports" >Reports</a></li><li><a href="https://example.com/index.php/reports/submit" >Submit a Report</a></li><li><a href="https://example.com/index.php/alerts" >Get Alerts</a></li><li><a href="https://example.com/index.php/contact" >Contact Us</a></li><li><a href="https://example.com/index.php/page/index/10" >How To Add</a></li><li><a href="https://example.com/index.php/page/index/12" >How it Works</a></li>                    </ul>

<div class="feedicon"><a href="https://example.com/index.php/feed/"><img alt="RSS" src="https://example.com/media/img/icon-feed.png" style="vertical-align: middle;" border="0" /></a></div>

</div>

如何选择第3个导航菜单?

B)我在Firefox上使用了Chrome和Firebug上的inspect元素。例如,在Chromes中检查元素,如果我右键单击有问题的特定锚标签,则选择器列表会出现在最底行。是否有一个工具可以告诉您究竟要为选择器编写什么,而不是试图测试和摆弄。我在理论上知道如何选择我喜欢的元素但经常看起来我错了。

2 个答案:

答案 0 :(得分:2)

尝试:

$('#mainmenu a').eq(2).click(function() {});

或:

$('#mainmenu a:eq(2)').click(function() {});

索引从0开始,所以2 = =第三个元素。

答案 1 :(得分:1)

我想你想要这个选择器:

$('#mainmenu li:nth-child(3) a')

这将选择列表元素,它是第三个孩子,而不是#mainmenu,它也是第三个孩子,正如您所做的那样。