• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Nachladen dynamischer Content und EventListener neu binden?

Jonas82

New member
Hallo,

ich habe viele Elemente die so aussehen:

Code:
<div class="listener" id="123">...</div>

Solche Elemente werden auch nachgeladen und per innerHTML in ein bestimmtes DIV gepflanzt.

Klicks auf diese DIVs werden damit abgearbeitet:

Code:
[].forEach.call(document.getElementsByClassName("listener"), function(elem) {
  elem.addEventListener("click", function() {

    alert(this.id);//to get the id attribute of the clicked element..    
    this.getElementsByClassName("container")[0].innerHTML = "Hello World";

  });
})

Problem ist jetzt natürlich, dass nachgeladene Elemente im DOM beim anklicken ignoriert werden.

Kann man ev. die obige "anonyme" Funktion so aufdröseln, dass eine Funktion davon dann alles neu BINDet und einzeln aufgerufen werden kann, nachdem z.B. Content nachgeladen wurde?

Danke!
Jonas
 
binde den eventhandler an einen container in dem alle elemente enthalten sind(im zweifelsfall document) und prüfe dann über event.target ob ein element von dir betroffen ist
 
Zurück
Oben