Javascript cloneNode無法克隆事件


cloneNode的使用

var box = document.querySelector('.box');

// 影子克隆: 只克隆節點本身
var box1 = box.cloneNode(false);

// 深度克隆: 克隆節點以及所有子節點
var box2 = box.cloneNode(true);

無法克隆非內聯事件

使用原生克隆方法之克隆屬性和內聯事件,對於通過事件監聽器添加的事件並不會克隆。

// 內聯事件處理函數,將會被綁定到克隆所得的新節點上
<div onclick="someFunction();">Click</div>
var el = document.querySelector('.some-class');

//addEventListener函數: 事件將不會被綁定到克隆所得的新節點上
el.addEventListener('click', function(e){
    //用戶單點
},false);

// 元素屬性: 事件將不會被綁定到被克隆的節點上
el.onclick = function(e) {
    // 用戶點擊
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM