CharacterData: before()-Methode
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die before()
-Methode der CharacterData
-Schnittstelle
fügt eine Menge von Node
-Objekten und Zeichenfolgen in die Kindliste des Elternelements der CharacterData
ein, direkt vor dem CharacterData
-Knoten.
Zeichenfolgen werden als Text
-Knoten eingefügt; die Zeichenfolge wird als Argument an den Text()
-Konstruktor übergeben.
Syntax
before(...nodes)
Parameter
Ausnahmen
HierarchyRequestError
DOMException
-
Wird ausgelöst, wenn die neuen Knoten nicht an der angegebenen Stelle in der Hierarchie eingefügt werden können, d.h. wenn eine der folgenden Bedingungen erfüllt ist:
- Wenn das Einfügen eines der hinzugefügten Knoten zu einem Zyklus führen würde, d.h. wenn einer von ihnen ein Vorfahre dieses
CharacterData
-Knotens ist. - Wenn einer der hinzugefügten Knoten kein
DocumentFragment
,DocumentType
,Element
oderCharacterData
ist. - Wenn dieser
CharacterData
-Knoten tatsächlich einText
-Knoten ist und sein Elternknoten einDocument
ist. - Wenn das Elternteil dieses
CharacterData
-Knotens einDocument
ist und einer der einzufügenden Knoten einDocumentFragment
mit mehr als einemElement
-Kind oder einemText
-Kind enthält.
- Wenn das Einfügen eines der hinzugefügten Knoten zu einem Zyklus führen würde, d.h. wenn einer von ihnen ein Vorfahre dieses
Beispiele
Die before()
-Methode ermöglicht es Ihnen, neue Knoten vor einem CharacterData
-Knoten einzufügen, wobei die Daten des aktuellen Knotens unverändert bleiben.
const h1TextNode = document.querySelector("h1").firstChild;
h1TextNode.before("h1# ");
h1TextNode.parentElement.childNodes;
// NodeList [#text "h1# ", #text "CharacterData.before()"]
h1TextNode.data;
// "CharacterData.before()"
Spezifikationen
Specification |
---|
DOM Standard # ref-for-dom-childnode-before① |
Browser-Kompatibilität
BCD tables only load in the browser