Je travaille avec jQuery et je cherche à voir s'il existe un moyen simple de déterminer si l'élément a une classe CSS spécifique associée.
J'ai l'id de l'élément et la classe CSS que je recherche. J'ai juste besoin de pouvoir, dans une instruction if, faire une comparaison basée sur l'existence de cette classe sur l'élément.
javascript
jquery
css
Vendeurs Mitchel
la source
la source
Réponses:
Utilisez la
hasClass
méthode:ou
L'argument est (évidemment) une chaîne représentant la classe que vous vérifiez, et il renvoie un booléen (il ne prend donc pas en charge le chaînage comme la plupart des méthodes jQuery).
Remarque: Si vous passez un
className
argument contenant des espaces, il sera mis en correspondance littéralement avec laclassName
chaîne des éléments de la collection . Donc si, par exemple, vous avez un élément,alors cela retournera
true
:et ceux-ci reviendront
false
:la source
de la FAQ
ou:
la source
Quant à la négation, si vous voulez savoir si un élément n'a pas de classe, vous pouvez simplement faire comme Mark l'a dit.
la source
Sans jQuery:
Ou:
C'est BIEN plus rapide que jQuery!
la source
...&&!!((' '+e.classname+' ').indexOf(' '+c+' ')+1)
, et pas seulement&&!(' '+e.classname+' ').indexOf(' '+c+' ')
?indexOf
renvoie-1
est la classe n'existe pas. Si je le fais!!-1
, ce le seraittrue
. Puisque je le fais!!-1+1
, ce sera faux. Une meilleure solution serait...&&!!~(' '+e.className+' ').indexOf(' '+c+' ')
, mais je ne m'en souvenais pas à l'époque....&&~(' '+e.className+' ').indexOf(' '+c+' ')
Dans le but d'aider quiconque atterrit ici mais cherchait en fait un moyen gratuit de le faire avec jQuery:
la source
Consultez la page officielle de la FAQ jQuery:
Comment tester si un élément a une classe spécifique ou non
la source
la source
Dans mon cas, j'ai utilisé la fonction 'est' une fonction jQuery, j'ai eu un élément HTML avec différentes classes css ajoutées, je cherchais une classe spécifique au milieu de celles-ci, j'ai donc utilisé le "est" une bonne alternative pour vérifier une classe ajoutée dynamiquement à un élément html, qui a déjà d'autres classes css, c'est une autre bonne alternative.
exemple simple:
exemple avancé:
la source