<body>
<a href="javascript:void(0);" id="start">start
</a>
<div id="test">
<div>t1
</div>
<div>t2
</div>
</div>
<script type="text/javascript">
window.onload = function(){
document.getElementById('start').onclick = function(){
var div = document.getElementById('test'),
childs = div.getElementsByTagName('div');
for(var i = 0; i < childs.length; i++){
var d = childs[i].cloneNode(true);
div.appendChild(d);
}
};
};
</script>
</body>
【对象都是引用,引用指的是同一个】
// childs = div.getElementsByTagName('div'); 会动态获取页面的div个数。
// div.appendChild(d); 动态插入
// 所以导致childs.length 一直在增加。 i
< childs.length 永远成立
解决办法: 可以先把节点添加到文档片段节点在。再在for循环外,一次appendChild 进去