Javascript / jQuery : Select-Klasse name, enthält word
Wie kann ich dies tun:
Habe ich das Objekt hat mehrere Klassen. Mein Ziel ist es, class-name, string(z.B. 'toaster') in es (oder beginnend mit dem string), und stellen Sie es in die variable.Beachten Sie, dass weiß ich, nur der Anfang-Klasse name und ich brauche, um die ganze.
z.B. <div class="writer quite-good toaster-maker"></div>
Habe ich in diesem div als meine jQuery-Objekt, nur muss ich setzen Klasse name toaster-maker
in Variablen className
;
Wieder, ich brauchen nicht zu wählen Sie Objekt! Ich brauche nur zu setzen Klassenname in variable.
- Wird diese Klasse immer dann geschrieben werden als der Letzte?
- Nein, es ist nicht
Du musst angemeldet sein, um einen Kommentar abzugeben.
So, vorausgesetzt, Sie haben bereits ein jQuery-Objekt mit, dass div, Sie könnte den Wert der
class
Attribut der split den string in der Klasse Namen, Durchlaufen Sie diese und sehen, welche enthälttoaster
:jQuery nicht bieten eine spezielle Funktion für, die.
Wenn Sie mehrere Elemente, für die Sie extrahieren möchten, die Namen der Klassen, die Sie verwenden können
.map
:classNames
wird dann ein array von Klassennamen.Im browser die Unterstützung
.classList
, können Sie auch$.each(this.classList, ...)
statt$.each(this.className.split(/\s+/), ...)
.function(name)
solltefunction(key, name)
. Andernfalls verwenden Sie den index als stringversuchen, diese,
Geige ist hier. Sie können auch den Klassennamen als ein array und drücken Sie die abgestimmt Klassennamen zu.
Einen regulären Ausdruck scheint effizienter zu sein hier:
gibt alle Klassennamen, die "toaster" (oder ein leeres array, wenn keine vorhanden sind).