cloneNode()是JavaScript中的一個方法,用于拷貝一個節點。它可以用來創建一個節點的副本,而不影響原始節點。
cloneNode()方法有一個可選的布爾參數deep,默認值為false。當deep為false時,只會拷貝當前節點,而不會拷貝其子節點。當deep為true時,會連同其子節點一起拷貝。
cloneNode()方法返回一個新的節點對象,可以通過appendChild()或insertBefore()等方法將其插入到文檔中的其他位置。
以下是cloneNode()方法的使用示例:
var originalNode = document.getElementById("original");
var clonedNode = originalNode.cloneNode(true); // 拷貝節點及其子節點
document.body.appendChild(clonedNode); // 將拷貝的節點插入到body中
在上面的示例中,首先通過getElementById()方法獲取id為"original"的節點。然后使用cloneNode()方法拷貝該節點,并將拷貝的節點插入到文檔的body中。
注意,cloneNode()方法只會拷貝節點本身的屬性和屬性值,而不會拷貝事件處理程序等。如果需要拷貝事件處理程序,可以使用addEventListener()方法將事件處理程序附加到拷貝的節點上。
此外,cloneNode()方法只能用于復制DOM節點,而不能用于復制JavaScript對象或其他非DOM對象。