Während die Funktion change() von jQuery Änderungen in Formularelementen effektiv überwacht, stellt das Erkennen von Inhaltsänderungen in DOM-Elementen eine Herausforderung dar.
Problem:
Bestimmung des Zeitpunkts, an dem ein DOM Der Inhalt eines Elements wird geändert, beispielsweise durch die Verwendung von $("#content").html('something');, ist eine komplexe Aufgabe, da change() auf Formularelemente beschränkt ist. Den Funktionen html() und append() fehlen Rückrufe.
Lösung:
Option 1: Nutzen Sie jQuery Chaining und Traversing
Für die grundlegende DOM-Manipulation verwenden Sie jQuery-Verkettung und -Traversierung, um mehrere Aktionen nacheinander auszuführen. Zum Beispiel:
$("#content").html('something').end().find(whatever)....
Option 2: Benutzerdefinierte Ereignisse und Triggerbehandlung implementieren
Wenn komplexere Aktionen erforderlich sind, erstellen Sie ein benutzerdefiniertes Ereignis mit bind() und von jQuery Lösen Sie es manuell mit triggerHandler() aus.
$("#content").html('something').triggerHandler('customAction'); $('#content').unbind().bind('customAction', function(event, data) { //Custom-action });
Beachten Sie, dass das Ereignis change() hauptsächlich für Eingabefelder gedacht ist. Wenn die DOM-Manipulation vom Code ausgeht, sollten Sie erwägen, sie dort zu behandeln, wo die Manipulation stattfindet.
Das obige ist der detaillierte Inhalt vonWie kann ich mit jQuery Änderungen im DOM-Elementinhalt erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!