XML DOM insertNode() 方法
定義和用法
insertNode() 方法在范圍的開頭插入一個節點。
語法:
insertNode(newNode)
參數
參數 | 描述 |
---|---|
newNode | 要插入文檔的節點。 |
拋出
如果 newNode 是 Attr、Document、Entity 或 Notation 節點,該方法將拋出代碼為 INVALID_NODE_TYPE_ERR 的 RangeException 異常。
在下列條件下,該方法還將拋出如下代碼的 DOMException 異常:
- HIERARCHY_REQUEST_ERR - 包含范圍的開始點的節點不能有子節點,它也不能有指定類型的子節點,或者 newNode 是該節點的祖先節點(或是該節點自身)。
- NO_MODIFICATION_ALLOWED_ERR - 包含范圍的開始點的節點(或它的祖先節點)是只讀的。
- WRONG_DOCUMENT_ERR - newNode 與范圍所屬于的文檔不同。
描述
該方法將把指定的節點(和它的所有子孫節點)插入文檔范圍的開始點。當該方法返回時,當前范圍將包括新插入的節點。如果 newNode 已經是文檔的一部分,那么它將被從當前位置刪除,然后重新插入范圍的開始點。如果 newNode 是 DocumentFragment 節點,那么插入的不是它自身,而是它的子孫節點,按順序插入范圍的開始點。
如果包含當前范圍的開始點的節點是 Text 節點,那么在發生插入操作前,它將被分割成兩個相鄰的節點。如果 newNode 是 Text 節點,在插入文檔后,它不會與任何相鄰的 Text 節點合并。要合并相鄰的節點,需要調用 Node.normalize() 方法。