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 已經是文檔的一部分,那么它將被從當前位置刪除,然后重新插入范圍的開始點。如果 newNodeDocumentFragment 節點,那么插入的不是它自身,而是它的子孫節點,按順序插入范圍的開始點。

如果包含當前范圍的開始點的節點是 Text 節點,那么在發生插入操作前,它將被分割成兩個相鄰的節點。如果 newNode 是 Text 節點,在插入文檔后,它不會與任何相鄰的 Text 節點合并。要合并相鄰的節點,需要調用 Node.normalize() 方法。

參閱

DocumentFragment 對象Node.normalize()