10
votes

Différence entre Tobgleclass et AddClass

Je travaille avec JQuery et essaye d'ajouter une classe à une table sur la sélection de cette ligne de table.

J'utilisais initialement le code suivant - P>

$(this).parents("tr").addClass("over", this.clicked);           


0 commentaires

4 Réponses :


13
votes

addClass fait juste que, ajoute la classe à l'élément.

toggleclass en revanche, bascule la classe, en le supprimant s'il est là, le ajoute autrement, mais prenant éventuellement une valeur booléenne (vrai / faux) pour déterminer si l'objet devrait être ajouté (vrai) ou supprimé (faux).

toggleclass ne fonctionnait probablement pas pour vous dans les instances où ceci.clicked a été était faux , qui est le comportement attendu. L'argument que vous passez dans addclass n'a aucun effet, puisqu'il ajoute toujours la classe.

Conclusion:

Utilisez tobgleclass pour basculer les classes, utilisez addclass pour ajouter des cours.


0 commentaires

1
votes

dépend vraiment. Si vous ne prévoyez pas de supprimer la classe, je vous entamerais avec addClass . Naturellement, toggleclass vous permet de basculer des cours.


1 commentaires

Je suis en train de traverser et de retirer la classe particulière pour toutes les lignes de la table avant de l'ajouter à la ligne sélectionnée. Par conséquent, je pense que juste addclass accomplira exactement ce dont j'ai besoin. Merci



3
votes

Il n'y a pas besoin de passer un deuxième argument à .adddclass () - il ajoutera toujours la classe.

Si c'est le comportement que vous voulez, c'est la bonne méthode.


1 commentaires

Merci d'avoir mentionné que le deuxième argument est inutile ... je l'ai supprimé et cela a bien fonctionné.



4
votes

Si addclass fonctionne pour vous, alors vous devez vous en tenir avec elle. Les méthodes sont destinées à des fins différentes. AddClass garantit qu'une classe particulière est présente sur un élément, tandis que toggleclass ajoute la classe si ce n'est pas là et le supprime si c'est.

Consultez la référence API pour l'explication complète de chaque méthode:


0 commentaires