2014-11-21 76 views
1

我想要使用jQuery从整个页面中选择全部n li元素。 例如:从下面的代码我想从两个div中选择第一个2 li元素。从enitre中选择第一个n元素div里面

<div class="abc"> 
    <ul> 
     <li>link 1</li> 
     <li>link 2</li> 
     <li>link 3</li> 
     <li>link 4</li> 
    </ul> 
</div> 
<div class="abc"> 
    <ul> 
     <li>link 1</li> 
     <li>link 2</li> 
     <li>link 3</li> 
    <li>link 4</li> 
    </ul> 
</div> 
+1

刚刚意识到没有标记的CSS。在CSS'div li:nth-​​child(-n + 2)'中将选择每个div ul的前2个li子节点。 [与此答案相同](http://stackoverflow.com/a/8821370/2930477) – misterManSam 2014-11-21 07:10:51

+0

$(“div li”).first() – Dhaval 2014-11-21 07:13:27

+0

[CSS解决方案的同样问题](http://stackoverflow.com/ q/8821193/2930477) – misterManSam 2014-11-21 07:18:37

回答

-1

你不能在一个语句中选择前两个li。为此,您必须使用不同的语句,如 $(“ul li:nth-​​child(1)”).css(“color”,“black”); $(“ul li:nth-​​child(2)”).css(“color”,“black”);

+0

但是没有固定数量的'div'元素,它是动态生成的。 – Rajesh 2014-11-21 07:18:51

+0

如果div元素没有修复,那么没问题,你可以将这些行添加到页面的前两个li元素ul $(“ul li:nth-​​child(1)”).css(“color”,“black”); $(“ul li:nth-​​child(2)”).css(“color”,“black”); – 2014-11-21 09:20:08

2

您可以尝试this

$('div.abc>ul>li:nth-child(-n+2)').css('color', 'red');