读书人

cloneNode会复制JS源码吗?解决方案

发布时间: 2012-03-31 13:13:26 作者: rapoo

cloneNode会复制JS源码吗?
我在一般JS书上看到,
cloneNode在IE下会复制事件处理程序,
是真的么?

如果是真的,
那在什么情况下,
会复制事件处理程序呢?

求指点............

[解决办法]
如果是写html中的可以复制

<body>
<div id="div1" onclick="alert(this.innerHTML)">xx</div>
<input onclick="document.body.appendChild(document.getElementById('div1').cloneNode(true))" type=button value=test>

如果是代码attachEvent的,需要自己复制

<body>
<div id="div1">xx</div>
<script>
function x()
{
document.getElementById('div1').onclick=function(){alert(this.innerHTML)};
e2=document.getElementById('div1').cloneNode(true);
e2.onclick=document.getElementById('div1').onclick
document.body.appendChild(e2)
}
</script>
<input onclick="x()" type=button value=test>

读书人网 >JavaScript

热点推荐