js 的动态获取与插入,卡死浏览

xiaoxiao2021-02-28  91

<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 进去
转载请注明原文地址: https://www.6miu.com/read-69960.html

最新回复(0)