Mit:
if(element.hasClass("class"))
Ich kann nach einer Klasse suchen, aber gibt es eine einfache Möglichkeit zu überprüfen, ob "Element" eine von vielen Klassen hat?
Ich benutze:
if(element.hasClass("class") || element.hasClass("class") ... )
Was nicht schlecht ist, aber ich denke an etwas wie:
if(element.hasClass("class", "class2")
Was leider nicht funktioniert.
Gibt es so etwas?
.hasClass()
aber Ihre Lösung scheint den Trick getan zu haben, danke$('element').is('.class1.class2')
tat.class1.class2
werden Elemente übereinstimmen, haben die beiden Klassen, aber sie für Elemente suchen , die passen entweder Klasse.funktioniert, aber es ist 35% langsamer als
Wenn Sie Zweifel haben, was ich sage, können Sie auf jsperf.com überprüfen .
Hoffe das hilft jemandem.
quelle
Dies sollte es tun, einfach und leicht.
quelle
filter () ist eine weitere Option
quelle
Wie wäre es damit?
quelle
Hier ist eine Antwort, die der Syntax von folgt
Es ist nicht das schnellste, aber es ist eindeutig und die Lösung, die ich bevorzuge. Bank: http://jsperf.com/hasclasstest/10
quelle
Error: $self is not defined
var $self = $(this);
kurz vor der for-SchleifeWas ist damit?
Einfach zu verwenden,
Und es scheint schneller zu sein, http://jsperf.com/hasclasstest/7
quelle
Wie wäre es mit:
quelle
> 0
. Wenn die Länge nicht Null ist, wird true zurückgegeben.jQuery
Vanilla JS
quelle
Verwenden Sie die Standardfunktion js match ():
Verwenden Sie Folgendes, um Variablen in regulärem Ausdruck zu verwenden:
Dies ist übrigens der schnellste Weg: http://jsperf.com/hasclass-vs-is-stackoverflow/22
quelle
Funktioniert bei mir:
quelle
Sie können dies folgendermaßen tun:
quelle
Das hat bei mir funktioniert:
quelle
$('.class1.class2')
dass für die zweite Klasse kein Attributselektor verwendet werden muss. Außerdem stellt sich die Frage, wie ein Element nach einer von allen Klassen ausgewählt werden kann.