问答详情
源自:9-14 删除节点removeChild()

大佬们看看这样问题出在哪里

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

    var x=content.childNodes[i];

    content.removeChild(x);  

  }


提问者:慕神943996 2020-10-27 21:24

个回答

  • 暗中讨饭
    2020-12-23 10:53:26

    因为每循环就会删除一个子节点,删除的子节点不再dom树结构中,所以下一个要删除的子节点就会占据上一个已经删除了的子节点的位置,下标【i】这里不能写i,因为子节点的位置每一次遍历都在发生变化。

  • 文艺理科生0
    2020-11-01 11:42:52

    i<(content.childNodes.length-1)

    循环次数i是从0开始的

  • 五彩缤纷的番石榴干
    2020-10-28 16:19:32

    content.parentNode.removeChild(x);