Schleife durch das array und fügen Sie Ereignis-listener "auf" jedem
Ich versuche zu iterieren durch ein array von Elementen und fügen Sie einen Ereignis-listener für jede.
Auffüllen der array:
var sliders = [].slice.call(document.getElementsByClassName("sliderControlLi"));
Iteration durch das array:
sliders.forEach(function (i){
addEventListener("click", function(){
console.log("you clicked slider controler " + this.index + "!");
});
});
Aber mit diesem code, wenn ich auf einen der Schieberegler bekomme ich mehrere Konsolen.log-ausdrucken - einmal für jeden Schieber in dem array.
Ist, habe ich mich für ähnliche Probleme, aber ich bin immer noch nicht lösen diese ein.
Vielen Dank für jede Hilfe!!!
- Und was ist
addEventListener
? Wo sind Sie, die Verweise auf das element, zum hinzufügen von onclick? - Verwenden
i.addEventListener(..)
... - Möglich, Duplikat der JavaScript-Verschluss in Schleifen – einfache praktische Beispiel
- Im Zusammenhang hinzufügen von "click" - Ereignis-Listener in der Schleife
- Meinst du, dass es sein sollte
sliders[i].addEventListener("click"
...? Wenn ich das mache, dann bekomme ich eine Fehlermeldung, dass " - regler.Sie addEventListener () ist keine Funktion"
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie verwenden
addEventListener()
als :Könnten Sie auch den index von
forEach
:Hoffe, das hilft.
JS:
HTML:
Sollten Sie mit Hilfe
also in deinem Fall