„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Warum zielen Ereignis-Listener in einer For-Schleife auf das letzte Objekt ab?

Warum zielen Ereignis-Listener in einer For-Schleife auf das letzte Objekt ab?

Veröffentlicht am 12.12.2024
Durchsuche:627

Why Do Event Listeners in a For Loop Target the Last Object?

addEventListener Verwenden einer For-Schleife und Übergeben von Werten

Bei Verwendung einer for-Schleife zum Hinzufügen von Ereignis-Listenern zu mehreren Objekten wird häufig das letzte Objekt verwendet Das Ziel für alle Listener-Verlagerungen. Dieser Artikel befasst sich mit diesem Problem und stellt einen korrigierten Code mithilfe von Abschlüssen bereit:

Überblick über das Problem:

Es wird versucht, Ereignis-Listener mithilfe einer Schleife zu mehreren Objekten hinzuzufügen. Aber Letztendlich zielen alle Zuhörer auf dasselbe Objekt (das letzte).

Fester Code:

Das Schließen ist eine Möglichkeit, diese Art von Problem zu verhindern. Der geänderte Code lautet wie folgt:

// 函数在点击时运行:
function makeItHappen(elem, elem2) {
    var el = document.getElementById(elem);
    el.style.backgroundColor = "red";
    var el2 = document.getElementById(elem2);
    el2.style.backgroundColor = "blue";
}

// 自动加载函数以添加侦听器:
var elem = document.getElementsByClassName("triggerClass");

for (var i = 0; i 
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3