MutationEvent
Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, kann sie bereits aus den relevanten Webstandards entfernt worden sein, befindet sich im Prozess der Entfernung oder wird nur aus Kompatibilitätsgründen beibehalten. Vermeiden Sie die Verwendung und aktualisieren Sie gegebenenfalls bestehenden Code; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu treffen. Beachten Sie, dass diese Funktion jederzeit nicht mehr funktionieren kann.
Die MutationEvent
-Schnittstelle stellt Ereigniseigenschaften bereit, die spezifisch für Änderungen an der Document Object Model (DOM)-Hierarchie und den Knoten sind.
Hinweis: Die Verwendung von Mutation Events ist problematisch:
- Ihr Design ist fehlerhaft.
- Das Hinzufügen von DOM-Mutations-Listenern zu einem Dokument verschlechtert die Leistung weiterer DOM-Änderungen in diesem Dokument erheblich (sie werden 1,5- bis 7-mal langsamer!). Darüber hinaus wird der Schaden durch das Entfernen der Listener nicht rückgängig gemacht.
- Sie haben schlechte plattformübergreifende Browser-Kompatibilität: Safari unterstützt
DOMAttrModified
nicht (siehe WebKit Bug 8191) und Firefox unterstützt keine Mutation Name Events (wieDOMElementNameChanged
undDOMAttributeNameChanged
).
Sie wurden zugunsten von Mutation Observers als veraltet markiert. Bitte verwenden Sie stattdessen diese.
Instanz-Eigenschaften
Diese Schnittstelle erbt auch Eigenschaften von ihrem übergeordneten UIEvent
und indirekt von Event
.
MutationEvent.attrChange
Nur lesbar Veraltet-
Gibt an, welche Art von Änderung das
DOMAttrModified
-Ereignis ausgelöst hat. Es kannMODIFICATION
(1
),ADDITION
(2
) oderREMOVAL
(3
) sein. Es hat für andere Ereignisse keine Bedeutung und wird dann auf0
gesetzt. MutationEvent.attrName
Nur lesbar Veraltet-
Gibt den Namen des Knotens an, der durch das
DOMAttrModified
-Ereignis betroffen ist. Für andere Ereignisse hat es keine Bedeutung und wird dann auf den leeren String (""
) gesetzt. MutationEvent.newValue
Nur lesbar Veraltet-
Enthält bei
DOMAttrModified
-Ereignissen den neuen Wert des modifiziertenAttr
-Knotens. BeiDOMCharacterDataModified
-Ereignissen enthält es den neuen Wert des modifiziertenCharacterData
-Knotens. In allen anderen Fällen wird der leere String (""
) zurückgegeben. MutationEvent.prevValue
Nur lesbar Veraltet-
Enthält bei
DOMAttrModified
-Ereignissen den vorherigen Wert des modifiziertenAttr
-Knotens. BeiDOMCharacterDataModified
-Ereignissen enthält es den vorherigen neuen Wert des modifiziertenCharacterData
-Knotens. In allen anderen Fällen wird der leere String (""
) zurückgegeben. -
Gibt den mit dem Ereignis verbundenen Knoten an, wie den geänderten Knoten innerhalb der Unterstruktur für
DOMSubtreeModified
.
Instanz-Methoden
MutationEvent.initMutationEvent()
Veraltet-
Konstruktormethode, die ein neues
MutationEvent
mit den gegebenen Parametern konfiguriert zurückgibt.
Liste der Mutation Events
Die folgende Liste enthält alle Mutation Events:
DOMAttrModified
(Nicht unterstützt von Safari)DOMAttributeNameChanged
(Nicht unterstützt von Firefox)DOMCharacterDataModified
DOMElementNameChanged
(Nicht unterstützt von Firefox)DOMNodeInserted
DOMNodeInsertedIntoDocument
DOMNodeRemoved
DOMNodeRemovedFromDocument
DOMSubtreeModified
Beispiele
Sie können einen Listener für Mutation Events registrieren, indem Sie EventTarget.addEventListener()
wie folgt verwenden:
element.addEventListener(
"DOMNodeInserted",
(event) => {
// …
},
false,
);
Spezifikationen
Specification |
---|
UI Events # interface-mutationevent |
Browser-Kompatibilität
BCD tables only load in the browser