Heim >Web-Frontend >js-Tutorial >Wie überprüfe ich die Klassenexistenz in JavaScript ohne jQuery?

Wie überprüfe ich die Klassenexistenz in JavaScript ohne jQuery?

Barbara Streisand
Barbara StreisandOriginal
2024-11-19 18:32:03649Durchsuche

How to Check for Class Existence in JavaScript Without jQuery?

Überprüfen der Klassenexistenz mit einfachem JavaScript

In JavaScript kann überprüft werden, ob ein Element eine bestimmte Klasse enthält, ohne auf jQuery-Bibliotheken angewiesen zu sein.

Eine Methode beinhaltet die Verwendung der className-Eigenschaft:

var test = document.getElementById("test");
var testClass = test.className;

if (testClass.includes("class1")) {
  test.innerHTML = "I have class1";
} else {
  test.innerHTML = "";
}

Dieser Ansatz hat jedoch Einschränkungen, wenn mehrere Klassen vorhanden sind. Für eine umfassende Lösung verwenden Sie die Methode classList.contains:

element.classList.contains(class);

Diese Methode funktioniert in allen modernen Browsern mit geeigneten Polyfills für ältere Versionen.

Alternativ kann die Methode indexOf verwendet werden, aber mit einer Anpassung:

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

Dadurch wird sichergestellt, dass teilweise Übereinstimmungen innerhalb anderer Klassennamen vorliegen ignoriert.

Um dies auf das bereitgestellte Beispiel anzuwenden:

var test = document.getElementById("test"),
  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;
  }
}

Das obige ist der detaillierte Inhalt vonWie überprüfe ich die Klassenexistenz in JavaScript ohne jQuery?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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