2010-07-14 4 views
1

Comment, en utilisant Nth-Child pourrais-je ajouter une classe à chaque boîte rouge?Jquery Nth-Child question

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

J'ai essayé d'utiliser:

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

Markup:

<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

nous montrant le balisage serait bien plus utile que nous montrant comment il affiche. –

+0

Je ne vois rien de mal à cela ... en fait, consultez ce violon: http://jsfiddle.net/G6kSV/. Semble fonctionner correctement - peut-être que vous rencontrez un problème avec autre chose que nth-child? – Faisal

Répondre

3

Celui-ci va mettre la classe yes sur tous LIs, sauf pour la première puis tous les trois:

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

Comme solution, vous pouvez appliquer la classe à tous les éléments et le retirer de tous les trois ...

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

Cela va ajouter la classe 'yes' aux deux premières colonnes. –

+0

Oups, bonne prise;) – Andir