Si j'ai la classe .A et la classe .B et que je souhaite basculer entre les clics sur le bouton, quelle est une bonne solution pour cela dans jQuery? Je ne comprends toujours pas comment ça toggleClass()
marche.
Existe-t-il une solution en ligne pour le mettre en onclick=""
événement?
jquery
toggleclass
Stewie Griffin
la source
la source
onclick=""
) est mauvais. pourquoi n'utilisez-vous pas jQuery pour enregistrer un gestionnaire d'événements approprié (ou un délégué / événement en direct si vous avez beaucoup d'éléments avec le même gestionnaire)Réponses:
Si votre élément expose la classe
A
depuis le début, vous pouvez écrire:Cela supprimera la classe
A
et ajoutera la classeB
. Si vous recommencez, cela supprimera la classeB
et rétablira la classeA
.Si vous souhaitez faire correspondre les éléments qui exposent l'une ou l'autre classe, vous pouvez utiliser un sélecteur de classes multiples et écrire:
la source
var $trigger = $(".A"); $trigger.on("click", function() {$trigger.toggleClass("A B")});
Voici une version simplifiée: ( quoique pas élégante, mais facile à suivre )
Alternativement, une solution similaire:
la source
toggle
est dépréciée dans jquery 2.0J'ai créé un plugin jQuery pour travailler DRY:
Vous pouvez simplement l'essayer ici, copier et exécuter cela dans la console, puis essayer:
la source
Votre
onClick
demande:Essayez-le: https://jsfiddle.net/v15q6b5y/
Juste le JS à la jQuery :
la source
Voici une autre façon «non conventionnelle».
Un exemple de ce scénario pourrait être des boutons dont la classe doit être activée sur un autre élément (par exemple, des onglets dans un conteneur).
la source
La solution la plus simple consiste à
toggleClass()
utiliser les deux classes individuellement.Disons que vous avez une icône:
Pour basculer entre
fa-angle-down
etfa-angle-up
procédez comme suit:Puisque nous avions
fa-angle-down
au début sans àfa-angle-up
chaque fois basculer les deux, l'un part pour que l'autre apparaisse.la source
Basculez entre deux classes «A» et «B» avec Jquery.
la source