问答详情
源自:2-16 综合案例

$('#menu .tag a:eq(8)')

//不分男女,选中第一类衣服中第9个a元素,并改变颜色

    //这里用了nth-child 选择的他们所有父元素的第n个子元素

 此处用   $('#menu .tag a:nth-child(10)').css('color','#66CD00');  可以选出两个class='tag'的第9个a元素

但是用$('#menu .tag a:eq(8)').css('color','#66CD00');  只能选出第一个class='tag'的第9个a元素,为什么?



提问者:strawIce 2016-09-19 16:24

个回答

  • 蓝璇梦幻
    2016-09-23 16:02:16
    已采纳

    :nth-child()——匹配的是其父元素下的第N个子元素,而父元素可能有多个,所以第N个子元素就可能有多个;

    :eq(index)——只匹配集合下的一个元素,没有父元素之说,相当于把":"之前符合的元素都集中在一个数组里,然后只选取一个索引值为index的元素;

    之间的区别只要记得案例就好~~

  • 小丨小菜鸟
    2016-09-19 17:35:14

    $('.list ul li:nth-child(2)')以这个为例

    nth-child是选择所有ul下的li,而eq只选择第一个ul下的li,记住两个的区别就行