Eventlistener is not a Function
Gabi
- javascript
Hallo,
Frage: ich hole mir Elemente via getElementsByClassName, iteriere über diese und bekomme sogleich mitgeteilt, Element.addEventListener wäre keine Funktion. Warum?
let Elemente = document.getElementsByClassName("Elemente");
[...Elemente].forEach(Element => {
Element.addEventListener("click", funkClick);
});
Hi,
Frage: ich hole mir Elemente via
getElementsByClassName, iteriere über diese und bekomme sogleich mitgeteilt,Element.addEventListenerwäre keine Funktion. Warum?
Wie lautet die Fehlermeldung genau?
let Elemente = document.getElementsByClassName("Elemente"); [...Elemente].forEach(Element => { Element.addEventListener("click", funkClick); });
Was ist funkClick?
cu,
Andreas a/k/a MudGuard
Hallo,
Fehlermeldung ist ein TypeError => Uncaught TypeError: Element.addEventlistener is not a function
...liegt nicht an der aufgerufenen Funktion funkClick, habe da mittlerweile schon ein wenig herumprobiert und in funkClick alles auskommentiert und nur mehr ein console.log() stehen.
Es scheint auch bei Objekten wie z.B. IMGs tadellos zu funktionieren, nur bei DIVs bockt es.
Ich habe auch mit IDs getestet, alles sehr komisch.
Als One-liner
document.getElementById("ElementID").addEventListener("click", funkClick);
funktioniert's, als Variable
let ElementID = document.getElementById("ElementID");
ElementID.addEventlistener("click", funkClick);
/*
Uncaught TypeError: Element.addEventlistener is not a function
*/
nicht.
Achte auf s/l/L/
💥👿💢😤💨⛈️🤬🔥 ❗❗❗
Dank dir für diesen Hinweis 😅
@@Gabi
Es scheint auch bei Objekten wie z.B.
IMGs tadellos zu funktionieren, nur beiDIVs bockt es.
divs kann man nicht anclicken. imgs auch nicht.
Merke: Niemals nicht-interaktive Elemente als Target von Click-Events verwenden!
Verwende buttons!
🖖 Stay hard! Stay hungry! Stay alive! Stay home!