Kürzlich, als ein Freund an einem Projekt arbeitete, stieß er auf dynamisch geladene Weibo -Inhalte und klickte dann auf "Kommentare erweitern", um alle Kommentare zum Weibo zu erhalten. Die dynamisch geladene <span Mid = '123456789' class = 'get_comment'> Klicken Sie hier, um Kommentare </span> zu laden.
Dann noch einmal schreiben
$ (". get_comment) .click (function () {// Antwortereignis Logik})Es wurde festgestellt, dass das Click -Ereignis nicht ausgelöst wird, und es gibt keinen Fehler beim Hören mit der Konsole. Wenn ich es nicht herausfinden kann,
Da ich es auch begegnete, als ich in der Sohu Home Furnier Mall ein Frachtmanagement machte, konzentrierte ich mich auf dynamisches Laden.
Ich erinnere mich, dass ich zu dieser Zeit Inline-Ereignisse und Inline-Ereignisse beim dynamischen Laden verwendet habe. Zum Beispiel var obtn = '<a onclick = "Freight.delete_curr_citys ();" href = "JavaScript: void (0);"> lösche </a> '; In der Tat ist Fracht ein Objekt. Delete_curr_citys ist eine Methode dieses Objekts.
Natürlich können Sie auch die Live () -Funktion von JQuery verwenden, um die Antwortlogik neu zu schreiben:
$ (". get_comment"). Live ('click', function () {var Mid = $ (this) .attr ("Mid"); alert (Mid);});Zu diesem Zeitpunkt kann JQuery auf das Span -Click -Ereignis reagieren. Hier werden Live -Funktionsdelegationsereignisse verwendet, die hauptsächlich für dynamisch generierte HTML -Ereignisantwort verwendet werden. In Bezug auf die Rolle der Live () -Funktion besteht sein intuitivster Vorteil darin, dass sie immer den Kundenbrowser -Operationen "anhören" kann, was auch für die neu hinzugefügten DOM -Knoten ohne Wiederherstellung wirksam ist. Vielleicht liegt es daran, dass dieses "Zuhören" ständig gebunden und beurteilt werden kann, was zu Problemen mit der Leistung von Webanwendungen führt. Sie können es selektiv entsprechend der Komplexität des Projekts verwenden. In Bezug auf Live -Funktionen finden Sie hier eine sehr detaillierte Erklärung:
Definition und Verwendung
Die Live () -Methode fügt ein oder mehrere Ereignishandler an das ausgewählte Element an und gibt die Funktionen an, die beim Auftreten dieser Ereignisse ausgeführt werden.
Event -Handler, die über die Live () -Methode angehängt sind, eignen sich zum Abgleich der aktuellen und zukünftigen Elemente des Selektors (z. B. neue Elemente, die von Skripten erstellt wurden).
Grammatik
$ (Selector) .live (Ereignis, Daten, Funktion)
Parameterbeschreibung
Ereignis erforderlich. Gibt ein oder mehrere Ereignisse an, die an ein Element angehängt sind.
Mehrere Ereignisse werden durch Leerzeichen getrennt. Muss ein gültiges Ereignis sein.
Daten optional. Gibt die zusätzlichen Daten an, die an die Funktion übergeben wurden.
Funktion erforderlich. Gibt die Funktion an, die ausgeführt wird, wenn ein Ereignis auftritt.
Die Gründe und Lösungen für das dynamisch generierte DOM im obigen Artikel werden nicht ausgelöst. Das Onclick -Ereignis wird nicht ausgelöst, die vom Editor geteilt werden. Ich hoffe, es kann Ihnen eine Referenz geben und ich hoffe, Sie werden Wulin.com mehr unterstützen.