MutationEvent

Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.

Nicht standardisiert: Diese Funktion ist nicht standardisiert und befindet sich nicht auf dem Weg zur Standardisierung. Verwenden Sie sie nicht auf Produktionsseiten, die dem Web ausgesetzt sind: Sie funktioniert nicht für alle Benutzer. Es kann auch große Inkompatibilitäten zwischen Implementierungen geben, und das Verhalten kann sich in Zukunft ändern.

Die MutationEvent-Schnittstelle bietet Ereigniseigenschaften, die speziell für Änderungen an der Document Object Model (DOM)-Hierarchie und -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 erheblich bei weiteren DOM-Änderungen in diesem Dokument (macht sie 1,5 - 7 Mal langsamer!). Zudem wird der Schaden durch das Entfernen der Listener nicht rückgängig gemacht.
  • Sie haben eine schlechte Browser-Kompatibilität: Safari unterstützt DOMAttrModified nicht (siehe WebKit-Fehler 8191) und Firefox unterstützt keine Mutation Name Events (wie DOMElementNameChanged und DOMAttributeNameChanged).

Sie wurden zugunsten von MutationObservern abgelöst. Erwägen Sie, stattdessen diese zu verwenden.

Instanz-Eigenschaften

Diese Schnittstelle erbt auch Eigenschaften von ihrem übergeordneten UIEvent und indirekt von Event.

MutationEvent.attrChange Schreibgeschützt Veraltet Nicht standardisiert

Gibt an, welche Art von Änderung das DOMAttrModified-Ereignis ausgelöst hat. Es kann MODIFICATION (1), ADDITION (2) oder REMOVAL (3) sein. Für andere Ereignisse hat es keine Bedeutung und ist dann auf 0 gesetzt.

MutationEvent.attrName Schreibgeschützt Veraltet Nicht standardisiert

Gibt den Namen des Knotens an, der vom DOMAttrModified-Ereignis betroffen ist. Für andere Ereignisse hat es keine Bedeutung und ist dann auf den leeren String ("") gesetzt.

MutationEvent.newValue Schreibgeschützt Veraltet Nicht standardisiert

Enthält bei DOMAttrModified-Ereignissen den neuen Wert des geänderten Attr-Knotens. Bei DOMCharacterDataModified-Ereignissen enthält es den neuen Wert des geänderten CharacterData-Knotens. In allen anderen Fällen wird der leere String ("") zurückgegeben.

MutationEvent.prevValue Schreibgeschützt Veraltet Nicht standardisiert

Enthält bei DOMAttrModified-Ereignissen den vorherigen Wert des geänderten Attr-Knotens. Bei DOMCharacterDataModified-Ereignissen enthält es den vorherigen neuen Wert des geänderten CharacterData-Knotens. In allen anderen Fällen wird der leere String ("") zurückgegeben.

MutationEvent.relatedNode Schreibgeschützt Veraltet Nicht standardisiert

Gibt den mit dem Ereignis verbundenen Knoten an, wie den geänderten Knoten innerhalb des Teilbaums für DOMSubtreeModified.

Instanz-Methoden

MutationEvent.initMutationEvent() Veraltet Nicht standardisiert

Konstruktor-Methode, die ein neues MutationEvent mit den angegebenen Parametern konfiguriert zurückgibt.

Liste der Mutation Events

Die folgende Liste zeigt 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 mit EventTarget.addEventListener() wie folgt registrieren:

js
element.addEventListener(
  "DOMNodeInserted",
  (event) => {
    // …
  },
  false,
);

Spezifikationen

No specification found

No specification data found for api.MutationEvent.
Check for problems with this page or contribute a missing spec_url to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch