我的測試環(huán)境是IE8,對于事件clone要注意一下3點:
1.運行時添加的事件不會被克隆,如下例:
1
a = document.getElementById('a'); //假設(shè)a是一個div
2 a.onclick = function () { alert(this.innerHTML); }
3
b = a.cloneNode();
2.解析HTML時原來帶的事件會被克隆,如下例:
1
<div id='a' onclick='alert(this.innerHTML)'>aaaa</div>
3.通過attachEvent添加的事件會被克隆,如下例:
1
a = document.getElementById('a');
2 a.attachEvent('onclick', function () {
3 alert(this.innerHTML);
4 });
5
b = a.cloneNode();
最后如果想在clone時將節(jié)點其中的子節(jié)點一同clone的話,請使用cloneNode(true)。