2009-12-25 12 views
1

HTML:addClass à condition

<ul id="list"> 
    <li>item</li> 
    <li>item</li> 
    <li>item</li> 
    <li>item</li> 
    <li class="action">item</li> 
</ul> 

jQuery:

$("#list li:last").addClass("active"); 

Cela fonctionne presque, mais l'élément "action" prend la classe "actif" lorsque son présent que je ne veux pas. Comment puis-je réécrire le jQuery ci-dessus afin qu'il ignore toujours le li.action et assigne la classe "active" à la dernière li avant elle?

Merci

Répondre

4

Utilisez le sélecteur :not(). Par exemple.

$("#list li:last:not(.action)").addClass("active"); 
+0

Oh, le chaînage fonctionne-t-il aussi? Cool! – 3zzy

+0

jQuery est un modèle de constructeur unique. C'est certainement cool. – BalusC

+0

Super, merci! :) – 3zzy