Heim  >  Artikel  >  Web-Frontend  >  Hier sind einige mögliche Artikeltitel in einem Frageformat, basierend auf Ihrem bereitgestellten Inhalt: * **Warum wird mein JavaScript „addEventListener“ beim Laden der Seite ausgelöst, wenn ich es zu einem dynamischen Element hinzufüge?** * **H

Hier sind einige mögliche Artikeltitel in einem Frageformat, basierend auf Ihrem bereitgestellten Inhalt: * **Warum wird mein JavaScript „addEventListener“ beim Laden der Seite ausgelöst, wenn ich es zu einem dynamischen Element hinzufüge?** * **H

Barbara Streisand
Barbara StreisandOriginal
2024-10-28 11:48:51322Durchsuche

Here are some potential article titles in a question format, based on your provided content:

* **Why Does My JavaScript `addEventListener` Fire on Page Load When Adding to a Dynamic Element?** 
* **How to Ensure Event Listeners Work Correctly with Dynami

JavaScript „addEventListener“-Ereignis wird beim Laden der Seite ausgelöst

Beim Anhängen von Ereignis-Listenern an dynamisch erstellte Elemente muss unbedingt sichergestellt werden, dass der Listener vorhanden ist korrekt gebunden, um das Ereignis zum gewünschten Zeitpunkt auszulösen.

Im bereitgestellten Skript wird das Ereignis beim Laden der Seite ausgelöst, da der Ereignis-Listener hinzugefügt wird, bevor das Element erstellt und in das DOM eingefügt wird. Um dieses Problem zu beheben, sollte Folgendes berücksichtigt werden:

  • Erstellen Sie zuerst das Element: Schreiben Sie den HTML-Code für das Element auf der Seite oder generieren Sie es dynamisch mit document.createElement() .
  • Finden Sie das Element im DOM: Rufen Sie das Element mit document.getElementById() ab.
  • Fügen Sie den Ereignis-Listener korrekt hinzu: Hängen Sie das an Ereignis-Listener mit addEventListener(). Anstatt die Alarmfunktion direkt zu übergeben, packen Sie sie in eine anonyme Funktion ein, um sie auszuführen, wenn das Ereignis eintritt.

Das korrigierte Skript sollte wie folgt aussehen:

<code class="javascript">document.write("<div id=\"myDiv\">I am a div</div>");
el = document.getElementById("myDiv");
el.addEventListener("click", function() { alert("clicktrack"); }, false);</code>

Folgendes Mit diesen Schritten wird der Ereignis-Listener an das Element angehängt, sobald es im DOM vorhanden ist, und das Ereignis wird ausgelöst, wenn auf das Element geklickt wird.

Das obige ist der detaillierte Inhalt vonHier sind einige mögliche Artikeltitel in einem Frageformat, basierend auf Ihrem bereitgestellten Inhalt: * **Warum wird mein JavaScript „addEventListener“ beim Laden der Seite ausgelöst, wenn ich es zu einem dynamischen Element hinzufüge?** * **H. 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