CharacterData: before() 方法
CharacterData 介面的 before() 方法會在 CharacterData 節點的父級的子節點列表中,在 CharacterData 節點之前插入一系列 Node 物件和字串。
語法
js
before(...nodes)
引數
返回值
無(undefined)。
異常
HierarchyRequestErrorDOMException-
在無法在指定位置插入新節點時丟擲,即滿足以下任一條件時:
- 如果插入的某個新節點會導致迴圈(即該節點是此
CharacterData節點的祖先)。 - 如果某個待插入的節點不是
DocumentFragment、DocumentType、Element或CharacterData。 - 如果此
CharacterData節點實際上是Text節點,且其父節點是Document。 - 如果此
CharacterData節點的父節點是Document,而待插入的節點之一是DocumentFragment,並且該DocumentFragment包含多個Element子節點,或者包含Text子節點。
- 如果插入的某個新節點會導致迴圈(即該節點是此
示例
before() 方法允許你在不改變當前節點資料的情況下,在 CharacterData 節點前插入新的節點。
js
const h1TextNode = document.querySelector("h1").firstChild;
h1TextNode.before("h1# ");
h1TextNode.parentElement.childNodes;
// NodeList [#text "h1# ", #text "CharacterData.before()"]
h1TextNode.data;
// "CharacterData.before()"
規範
| 規範 |
|---|
| DOM # ref-for-dom-childnode-before① |
瀏覽器相容性
載入中…