for(i=0;i<content.childNodes.length;i++) content.removeChild(content.childNodes[i]);为什么点击第一下删除前面三个?

来源:9-14 删除节点removeChild()

慕妹3608846

2016-05-02 17:07

for(i=0;i<content.childNodes.length;i++) content.removeChild(content.childNodes[i]);为什么点击第一下删除前面三个?

写回答 关注

1回答

  • 慕粉3291337
    2016-05-02 19:54:59

    for(var i=content.childNodes.length-1;i>=0;i--){

          alert(content.childNodes.length-1+","+i);

          x=content.removeChild(content.childNodes[i]);

      }//倒过来移除的

    可以用这个验证一下

    for(var i=0;i<content.childNodes.length;i++){

          alert(content.childNodes.length-1+","+i);

          x=content.removeChild(content.childNodes[i]);

      }

    //对比之下似乎content下的大致有两个子节点,第一个是空的,第二个才是包含所有具体的HTML内容,而用content.childNodes.length作为判断条件content.childNodes.length一直减小,而 i 一直增大肯定在中间值的时候停止循环啊;

    同是初学者,不喜互喷;


JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468191 学习 · 21891 问题

查看课程

相似问题