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 (wie DOMElementNameChanged und DOMAttributeNameChanged).

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 kann MODIFICATION (1), ADDITION (2) oder REMOVAL (3) sein. Es hat für andere Ereignisse keine Bedeutung und wird dann auf 0 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 modifizierten Attr-Knotens. Bei DOMCharacterDataModified-Ereignissen enthält es den neuen Wert des modifizierten CharacterData-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 modifizierten Attr-Knotens. Bei DOMCharacterDataModified-Ereignissen enthält es den vorherigen neuen Wert des modifizierten CharacterData-Knotens. In allen anderen Fällen wird der leere String ("") zurückgegeben.

MutationEvent.relatedNode Nur lesbar Veraltet

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:

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

Spezifikationen

Specification
UI Events
# interface-mutationevent

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch