XML DOM cloneNode() 方法
定義和用法
cloneNode() 方法可創建指定的節點的精確拷貝。
此方法可返回所復制的節點。
語法:
nodeObject.cloneNode(include_all)
參數 | 描述 |
---|---|
include_all | 必需。假如邏輯參數被設置為真,那么被克隆的節點會克隆原節點的所有子節點。 |
返回值
當前節點的副本。
說明
該方法將復制并返回調用它的節點的副本。如果傳遞給它的參數是 true,它還將遞歸復制當前節點的所有子孫節點。否則,它只復制當前節點。
返回的節點不屬于文檔樹,它的 parentNode 屬性為 null。
當復制的是 Element 節點時,它的所有屬性都將被復制。但要注意,當前節點上注冊的事件監聽器函數不會被復制。
實例
在所有的例子中,我們將使用 XML 文件 books.xml,以及 JavaScript 函數 loadXMLDoc()。
下面的代碼片段可克隆首個 <book> 節點,然后把它添加到節點列表的末尾:
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName('book')[0];
var cloneNode=x.cloneNode(true)
;
xmlDoc.documentElement.appendChild(cloneNode);
//Output all titles
var y=xmlDoc.getElementsByTagName("title");
for (i=0;i<y.length;i++)
{
document.write(y[i].childNodes[0].nodeValue);
document.write("<br />");
}
輸出:
Everyday Italian Harry Potter XQuery Kick Start Learning XML Everyday Italian