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