Heim > Web-Frontend > js-Tutorial > Wie kann man in JavaScript effizient auf das Vorhandensein von Elementklassen prüfen?

Wie kann man in JavaScript effizient auf das Vorhandensein von Elementklassen prüfen?

DDD
Freigeben: 2024-11-30 20:30:16
Original
664 Leute haben es durchsucht

How to Efficiently Check for Element Class Presence in JavaScript?

Überprüfung auf Vorhandensein von Elementklassen in JavaScript

Wie können Sie mit einfachem JavaScript feststellen, ob ein Element eine bestimmte Klasse enthält? Bei Verwendung der className-Eigenschaft ist eine genaue Klassenübereinstimmung erforderlich, was zu Einschränkungen führt, wenn ein Element mehrere Klassen hat.

Lösung: element.classList.contains

Element. classList stellt eine .contains-Methode bereit, die speziell für diesen Zweck entwickelt wurde:

element.classList.contains(className);
Nach dem Login kopieren

Diese Methode wird von allen modernen Browsern unterstützt und kann unterstützt werden polyfilled für ältere Versionen.

Alternative: Verwendung von indexOf

Alternativ können Sie element.className und indexOf für ältere Browser verwenden, denen die ClassList-Unterstützung fehlt, jedoch sind geringfügige Anpassungen erforderlich um die Genauigkeit zu gewährleisten:

function hasClass(element, className) {
    return (' ' + element.className + ' ').indexOf(' ' + className+ ' ') > -1;
}
Nach dem Login kopieren

Dadurch wird sichergestellt, dass die gesuchte Klasse kein Teilstring einer anderen Klasse ist Name.

Codebeispiel

So wenden Sie diese Lösung auf Ihre spezifische Situation an:

var test = document.getElementById("test");
var classes = ['class1', 'class2', 'class3', 'class4'];

test.innerHTML = "";

for(var i = 0, j = classes.length; i < j; i++) {
    if(hasClass(test, classes[i])) {
        test.innerHTML = "I have " + classes[i];
        break;
    }
}
Nach dem Login kopieren

Dieser Code verwendet einen effizienteren Ansatz durch Durchschleifen eine vordefinierte Reihe potenzieller Klassen, die Redundanz reduziert und die Wartbarkeit verbessert.

Das obige ist der detaillierte Inhalt vonWie kann man in JavaScript effizient auf das Vorhandensein von Elementklassen prüfen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage