Überprüfen Sie, ob event.target eine bestimmte Klasse hat, die JavaScript verwendet

Uberprufen Sie Ob Event Target Eine Bestimmte Klasse Hat Die Javascript Verwendet



Manchmal möchte der Programmierer überprüfen, ob das Element, das das Ereignis ausgelöst hat (das event.target), mit dem Selektor übereinstimmt, der ihm wichtig ist. Wie macht man das? JavaScript bietet einige vordefinierte Methoden wie „ enthält() ' und ' Streichhölzer() ” Methoden, um den spezifischen Selektor in einem Zielereignis zu identifizieren.

In diesem Beitrag werden die Methoden erläutert, um mithilfe von JavaScript festzustellen, ob das event.target eine bestimmte Klasse hat oder nicht.

Wie überprüfe ich mit JavaScript, ob event.target eine bestimmte Klasse hat?

Verwenden Sie die folgenden vordefinierten JavaScript-Methoden, um festzustellen, ob event.target eine bestimmte Klasse hat:







Sehen wir uns an, wie diese Methoden zur Bestimmung der Klasse in einem event.target funktionieren.



Methode 1: Überprüfen Sie mit der Methode contains(), ob event.target eine bestimmte Klasse hat

Um festzustellen, ob ein Element zu einer bestimmten Klasse gehört, verwenden Sie das „ enthält() „Methode der“ Klassenliste ' Objekt. Die Methode contains() wird verwendet, um festzustellen, ob ein bestimmtes Element in der Sammlung vorhanden ist. Seine Ausgänge „ Stimmt ” wenn der Artikel vorhanden ist, sonst gibt es “ FALSCH “. Dies ist der effizienteste Weg, um die Klasse eines Elements zu bestimmen.



Syntax





Befolgen Sie die unten angegebene Syntax, um mithilfe der Methode contains() festzustellen, ob event.target eine bestimmte Klasse hat oder nicht:

Veranstaltung. Ziel . Klassenliste . enthält ( 'Klassenname' )

In der obigen Syntax:



  • ereignis.ziel “ ist ein ausgelöstes Ereignis, das überprüft wird, ob es die spezifische Klasse enthält oder nicht.
  • Das ' Klassenname “ gibt den Namen der CSS-Klasse an, die Teil des ausgelösten Ereignisses ist.

Rückgabewert

Es kehrt „ Stimmt ” wenn das ausgelöste Ereignis die angegebene Klasse hat; andernfalls gibt es „ FALSCH “.

Beispiel

Erstellen Sie zunächst drei „ div “-Elemente in einer HTML-Datei unter Verwendung des HTML

Schild:

< div Klasse = 'center div div1Style' Ich würde = 'div1' > 1

< div Klasse = 'div div2Style' Ich würde = 'div2' > zwei

< div Klasse = 'div div3Stil' Ich würde = 'div3' > 3

div >

div >

div >

Gestalten Sie die Elemente mit CSS-Styling. Erstellen Sie dazu eine CSS-Klasse „ .div ” für alle div-Elemente:

. div {

Polsterung : 10px ;

Höhe : 100px ;

Breite : 100px ;

Rand : 10px ;

}

Ein ... kreieren ' .Center ”-Klasse zum Setzen der Elemente in die Mitte der Seite:

. Center {

Rand : Auto ;

}

Zum Stylen erstellt nun jedes div einzeln eine CSS-Klasse für sie. Legen Sie für das erste div die Hintergrundfarbe „ rot ' in dem ' div1Stil ' Klasse:

. div1Stil

{

Hintergrund - Farbe : rot ;

}

Legen Sie für das zweite div die Hintergrundfarbe „ Rettich rosa ' Verwendung der ' rgb(194, 54, 77) ” Code im “ div2Style ' Klasse:

. div2Style

{

Hintergrund - Farbe : rgb ( 194 , 54 , 77 ) ;

}

Legen Sie die Hintergrundfarbe fest “ rosa “ des dritten div durch Erstellen des „ div3Style ' Klasse:

. div3Style

{

Hintergrund - Farbe : rosa ;

}

Nach dem Ausführen des obigen HTML-Codes sieht die Ausgabe so aus:

Nun, in einer JavaScript-Datei oder einem „ Skript ”-Tag verwenden Sie den unten bereitgestellten Code, um zu überprüfen, ob das event.target eine bestimmte Klasse hat oder nicht:

dokumentieren. addEventListener ( 'klicken' , Funktion handleClick ( Veranstaltung ) {

wo hasClass = Veranstaltung. Ziel . Klassenliste . enthält ( 'Center' ) ;

Alarm ( 'Dieses Div enthält die 'Center'-Klasse: ' + hatKlasse ) ;

} ) ;

Im obigen Code-Snippet:

  • Hängen Sie zunächst einen Ereignis-Listener an ein Klickereignis an, das jeden Klick auf DOM verarbeitet.
  • Überprüfen Sie dann, ob das ausgelöste Ereignis die CSS-Klasse „ Center “ oder nicht mit Hilfe des „ klassenliste.klasse() ' Methode.

Ausgabe

Das obige GIF zeigt, dass div1 das „ Center „Klasse wie es sich zeigt“ Stimmt “, während div2 und div3 „ FALSCH “ im Warnfeld, was bedeutet, dass sie nicht das „ Center ' Klasse.

Methode 2: Überprüfen Sie, ob event.target eine bestimmte Klasse hat, indem Sie die Methode matchs() verwenden

Eine weitere vordefinierte JavaScript-Methode namens „ Streichhölzer() “ kann verwendet werden, um zu prüfen, ob eine bestimmte Klasse zu einem Element oder einem Ereignis gehört. Das ' Klassenname “ ist der einzige Parameter, der benötigt wird, um festzustellen, ob ein Element oder ein Zielereignis eine bestimmte Klasse enthält oder nicht.

Syntax

Die unten angegebene Syntax wird für die Methode matchs() verwendet:

Veranstaltung. Ziel . Streichhölzer ( '.Klassenname' )

In der obigen Syntax,

  • ereignis.ziel “ ist ein ausgelöstes Ereignis, das überprüft wird, ob es die spezifische Klasse enthält oder nicht.
  • Das ' Klassenname “ gibt den Namen der CSS-Klasse an, die Teil des ausgelösten Ereignisses ist. Die Methode matchs() nimmt den Namen der Klasse zusammen mit einem Punkt (.), der das Wort „ Klasse “.

Rückgabewert

Wenn das Zielereignis eine Klasse hat, gibt es „ Stimmt ' anders, ' FALSCH ' ist zurück gekommen.

Beispiel

Verwenden Sie in einer JavaScript-Datei oder einem Skript-Tag die folgenden Codezeilen, um zu überprüfen, ob das event.target eine bestimmte Klasse hat oder nicht, indem Sie das „ Streichhölzer() ' Methode:

dokumentieren. addEventListener ( 'klicken' , Funktion handleClick ( Veranstaltung ) {

wo hasClass = Veranstaltung. Ziel . Streichhölzer ( '.div3Style' ) ;

Alarm ( 'Die Klasse dieses Divs stimmt mit der Klasse 'div3Style' überein: ' + hatKlasse ) ;

} ) ;

In den obigen Codezeilen:

  • Hängen Sie zunächst einen Ereignis-Listener an ein Klickereignis an, das jeden Klick auf DOM verarbeitet.
  • Prüfen Sie dann, ob „ div3Style ” CSS-Klasse existiert in einem ausgelösten Ereignis mit dem “ Streichhölzer() ' Methode.
  • Wenn es vorhanden ist, zeigt alert() eine Nachricht mit „ Stimmt ', anders ' FALSCH “.

Ausgabe

Das obige GIF zeigt, dass nur div3 das „ div3Style „Klasse wie es sich zeigt“ Stimmt “.

Fazit

Um festzustellen, ob ein ausgelöstes Ereignis eine bestimmte Klasse hat, verwenden Sie das JavaScript „ enthält() “ Methode oder die „ Streichhölzer() ' Methode. Die Methode contains() ist jedoch einer der nützlichsten Ansätze, um die Klasse eines Elements zu bestimmen. Beide Methoden geben „ Stimmt ” wenn das ausgelöste Ereignis eine Klasse hat, sonst “ FALSCH ' ist zurück gekommen. In diesem Beitrag wurden die Methoden erläutert, mit denen mithilfe von JavaScript festgestellt werden kann, ob das event.target eine bestimmte Klasse hat oder nicht.