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