Heim >Web-Frontend >js-Tutorial >Wie kann ich Ereignis-Listener zu mehreren Elementen in einer einzigen Codezeile hinzufügen?

Wie kann ich Ereignis-Listener zu mehreren Elementen in einer einzigen Codezeile hinzufügen?

Susan Sarandon
Susan SarandonOriginal
2024-10-26 08:29:03916Durchsuche

How can I add event listeners to multiple elements in a single line of code?

Ereignis-Listener zu mehreren Elementen in einer einzigen Zeile hinzufügen

Wenn Sie mit mehreren Elementen arbeiten, kann es mühsam sein, jedem Element Ereignis-Listener hinzuzufügen eins einzeln. Glücklicherweise gibt es eine Möglichkeit, diesen Prozess zu rationalisieren und Ereignis-Listener zu mehreren Elementen in einer einzigen Codezeile hinzuzufügen.

Verwenden einer Schleife

Eine effektive Methode ist: Verwenden Sie eine Schleife, um ein Array von Elementen zu durchlaufen und jedem den Ereignis-Listener hinzuzufügen. Zum Beispiel:

let elementsArray = document.querySelectorAll("whatever");

elementsArray.forEach(function(elem) {
    elem.addEventListener("input", function() {
        // This function does stuff
    });
});

Dieser Code wählt alle Elemente aus, die mit dem angegebenen Selektor übereinstimmen, und fügt jedem einen Ereignis-Listener für das „Eingabe“-Ereignis hinzu.

Grammatische Bedenken

Möglicherweise ist Ihnen das grammatikalische Problem in Ihrem zweiten Beispiel aufgefallen:

element1 && element2.addEventListener("input", function() {
    // this function does stuff
});

Diese Syntax ist grammatikalisch falsch. Der richtige Weg, dies zu schreiben, wäre:

(element1 && element2) && element2.addEventListener("input", function() {
    // this function does stuff
});

Diese Methode ist jedoch immer noch nicht effizient, da sie jedem Element separat einen Ereignis-Listener hinzufügt. Der oben beschriebene Schleifenansatz ist eine optimiertere Lösung.

Das obige ist der detaillierte Inhalt vonWie kann ich Ereignis-Listener zu mehreren Elementen in einer einzigen Codezeile hinzufügen?. 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