为什么不能全部删除,而且第一次删除的是2和4,偶数。
我想一次全部删除要怎么做。
只适配WEBKI
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
function test(){
var li = document.getElementsByTagName('li');
for(var i = 1; i < li.length; i++){
li[i].parentNode.removeChild(li[i]);
}
}
var li = document.getElementsByTagName('li');
返回的li集合对象是一个动态绑定的,而非静态绑定。
也就是说你每删除一个子元素,li的大小就会发生变化
你共有5个子元素
你从第2个开始删除
i=1->长度变为4->i为2 ,2<4,继续删除 <li>2</li>被删除
i=2->长度变为3->i为3 ,3<3,不能够继续删除 <li>4</li>被删除
也就是你只删除了2个元素
访问为从尾部开始删除