Heim  >  Artikel  >  Web-Frontend  >  Wie wechsle ich Elementklassen in JavaScript?

Wie wechsle ich Elementklassen in JavaScript?

WBOY
WBOYnach vorne
2023-08-24 17:29:131042Durchsuche

如何在 JavaScript 中切换元素类?

Das Wechseln von Elementklassen bedeutet das Hinzufügen und Entfernen bestimmter Klassen zu HTML-Elementen basierend auf bestimmten Bedingungen.

Wenn wir beispielsweise ein HTML-Div-Element hervorheben möchten, wenn die Maus darauf eintritt, müssen wir dem HTML-Element eine bestimmte Klasse mit unterschiedlichen Stilen hinzufügen.

Hier lernen wir verschiedene Möglichkeiten kennen, Elementklassen mithilfe von JavaScript und jQuery zu wechseln. In diesem Tutorial lernen wir, Elementklassen in JavaScript zu wechseln.

Verwenden Sie die toggle()-Methode von classList

Die Methode

toggle() wechselt die Klasse im Element. Es prüft, ob die Klasse vorhanden ist, und entfernt sie dann; andernfalls fügt es die Klasse dem Element hinzu.

Grammatik

Benutzer können die toggle()-Methode verwenden, um Elementklassen über JavaScript gemäß der folgenden Syntax zu wechseln.

divElement.classList.toggle("class_name"); 

In der obigen Syntax ist divElement ein HTML-Element, in dem wir die als Argument an die Toggle-Methode übergebene Klasse umschalten möchten.

Beispiel 1

Im folgenden Beispiel haben wir ein div-Element erstellt und ihm einige Stile gegeben. Wenn der Benutzer auf die Schaltfläche klickt, ruft er die Funktion toggleClass() auf. In der Funktion toggleClass() greifen wir über seine ID auf das div-Element zu.

Danach wenden wir die Methode toggle() auf die classList des div-Elements an. Die Eigenschaft classList gibt die Klassen aller div-Elemente im Array-Format zurück. Zusätzlich haben wir den Klassennamen „color“ als Parameter an die toggle()-Methode übergeben. Es werden also Farbklassen in div-Elementen hinzugefügt und entfernt.

<html>
<head>
   <style>
      div {
         width: 10rem;
         height: 10rem;
         border: 2px solid blue;
         border-radius: 12px;
      }
      .color {
         background-color: grey;
      }
   </style>
</head>
<body>
   <h2>Using the <i> toggle() method </i> to toggle and element class using JavaScript.</h2>
   <h3>Click the below button to add and remove the class from the below div.</h3>
   <div id="div-ele"></div>
   <br>
   <button onClick="toggleClass()">Toggle color class</button>
   <script>
      function toggleClass() {
         let divElement = document.getElementById('div-ele');
         divElement.classList.toggle("color");
      }
   </script>
</body>
</html>

In der obigen Ausgabe kann der Benutzer beobachten, dass beim Klicken auf die Schaltfläche die Hintergrundfarbe des div-Elements geändert wird und gleichzeitig die Farbkategorie des div-Elements geändert wird.

Verwenden Sie die Methoden „contains()“, „add()“ und „remove()“

Die Methode

contains prüft, ob ein Array ein bestimmtes Element enthält. Die Methode add() fügt einem Element eine Klasse hinzu und die Methode remove() entfernt eine Klasse aus einem Element.

Wir können das Attribut „classList“ verwenden, um alle Klassen abzurufen, die ein Element enthält, und dann können wir die Methode „contains()“ verwenden, um zu überprüfen, ob ein Element eine bestimmte Klasse enthält. Wenn es nicht enthalten ist, können wir es hinzufügen; andernfalls müssen wir die Klasse entfernen.

Grammatik

Benutzer können die Methoden „contains()“, „add()“ und „remove()“ gemäß der folgenden Syntax verwenden, um die Klasse eines Elements zu wechseln.

if (divElement.classList.contains("class_name")) {
   divElement.classList.remove("circle");
} else {
   divElement.classList.add("circle");
} 

In der obigen Syntax verwenden wir die Methode enthält(), um zu prüfen, ob die Klassenliste die Klasse „Klassenname“ enthält, und auf dieser Grundlage fügen wir die Klasse zum Element hinzu und entfernen sie daraus.

Beispiel 2

Im folgenden Beispiel haben wir dem div-Element einige Stile zugewiesen. Zusätzlich haben wir die Klasse „circle“ erstellt, die ein Div in einen Kreis umwandelt. Immer wenn der Benutzer auf die Schaltfläche klickt, prüft die Funktion toggleClass(), ob das div-Element die Klasse „circle“ enthält. Wenn die Methode „contains()“ für die Klasse „Circle“ „true“ zurückgibt, entfernen wir die Klasse „Circle“ mithilfe der Methode „remove()“ mit classList aus dem div. Andernfalls fügen wir die Klasse „circle“ im div-Element mit der Methode add() hinzu.

<html>
<head>
   <style>
      div {
         width: 10rem;
         height: 10rem;
         border: 2px solid yellow;
         background-color: blue;
         display: flex;
         justify-content: center;
         align-items: center;
         color: white;
         font-size: larger;
      }
      .circle {
         border-radius: 50%;
      }
   </style>
</head>
<body>
   <h2>Using the <i> contains(), add(), and remove() method </i> to toggle and element class using JavaScript. </h2>
   <h3>Click the below button to add and remove the circle class from the below div. </h3> 
   <div id="div-ele">
      Square
   </div>
   <br>
   <button onClick="toggleClass()">Toggle color class</button>
   <script>
      function toggleClass() {
         let divElement = document.getElementById('div-ele');
         let allClass = divElement.classList;
         
         // if the element contains the circle class, remove it; Otherwise, add it.
         if (allClass.contains("circle")) {
            divElement.classList.remove("circle");
            divElement.innerHTML = "Square";
         } else {
            divElement.classList.add("circle");
            divElement.innerHTML = "Circle";
         }
      }
   </script>
</body>
</html>

In der obigen Ausgabe kann der Benutzer beobachten, wie das Div zwischen rund und quadratisch wechselt, indem er einfach auf die Schaltfläche klickt.

Verwenden Sie die toggleClass()-Methode von JQuery

JQuery enthält die toggleClass()-Methode, die genauso funktioniert wie die toggle()-Methode von JavaScript. Wir können ein HTML-Element als Referenz auf die toggleClass()-Methode nehmen und den Klassennamen als Parameter übergeben.

Grammatik

Benutzer können die toggleClass()-Methode von JQuery verwenden, um Elementklassen gemäß der folgenden Syntax zu wechseln.

$(element).toggleClass("class_name"); 

In der obigen Syntax sollten Benutzer das Element durch die Element-ID, Klasse oder Tag ersetzen, um mit JQuery auf das Element zuzugreifen. class_name ist der Klassenname des umzuschaltenden Referenzelements.

Beispiel 3

Im folgenden Beispiel ändern wir die Farbe des Textes des -Elements, indem wir die text_color-Klasse des -Elements mithilfe der toggleClass()-Methode von JQuery umschalten.

In der Ausgabe kann der Benutzer beobachten, dass bei jedem Drücken der Schaltfläche die Textfarbe des Span-Elements zwischen Rot und der Standardfarbe wechselt.

<html>
<head>
   <style>
      .text_color {
         color: red;
      }
   </style>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.3/jquery.min.js"></script>
</head>
<body>
   <h2>Using the <i> JQuery's toggleClass() method </i> to toggle and element class using JQUery. </h2>
   <h3>Click the below button toggle text_color class from the below span element.</h3>
   <span>This is a sample text.</span>
   <br>
   <br>
   <button onClick="toggleClass()">Toggle color class</button>
   <script>
      function toggleClass() {
         $("span").toggleClass("text_color");
      }
   </script>
</body>
</html>

Wir haben drei Möglichkeiten kennengelernt, Elementklassen mithilfe von JavaScript und JQuery zu wechseln. Wenn der Benutzer Code in JavaScript schreiben möchte, kann die Methode toggle() verwendet werden; wenn der Benutzer Code in JQuery schreiben möchte, kann die Methode toggleClass() verwendet werden.

Das obige ist der detaillierte Inhalt vonWie wechsle ich Elementklassen in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen