2010-07-14 22 views
1

如何使用Nth-Child可以为每个红色框添加一个类?Jquery N-Child问题

alt text http://www.eirestudio.net/hosting-files/dd.png

我已经尝试使用:

$('#mainnav li ul li:nth-child(3n)').addClass('yes'); 

标记:

<ul> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
     <li><a href="">SUUB</a></li> 
</ul> 
+0

显示我们的标记会的方式比我们展示它如何显示更有帮助。 – 2010-07-14 00:28:16

+0

我没有看到有什么不妥......事实上,看看这个小提琴:http://jsfiddle.net/G6kSV/。似乎工作正常 - 也许你对除了第n个孩子以外的东西有问题? – Faisal 2010-07-14 00:38:13

回答

3

这一次将会把yes类上的所有LIS,除了第一个然后每三分之一:

$('#mainnav li ul li:not(:nth-child(3n+1))').addClass('yes'); 
1

作为一种解决方案,您可以将类的所有项目,并从每一个第三删除...

$('#mainnav ul li').addClass('yes').parent().find(':nth-child(3n)').removeClass('yes');​​​​ 
+1

这会将'yes'类添加到前两列。 – 2010-07-14 00:51:14

+0

哎呀,很好的接收;) – Andir 2010-07-14 00:53:12