为了账号安全,请及时绑定邮箱和手机立即绑定

空白节点造成的removeChild一次性无法删除的问题

解决空白节点造成的removeChild一次性无法删除的问题   在进行删除一个子节点的时候重新给I赋值0   可能会加具内存的运算  for(var i=0;i<content.childNodes.length;i++){      if(content.childNodes[i].nodeType!=1){           continue;        }         var zz = content.removeChild(content.childNodes[i]);             var i=0;      } }

正在回答

1 回答

在删除了子节点后  重新给I赋值0   意思就是永远删除第一个子节点

0 回复 有任何疑惑可以回复我~
#1

hiddensorrow

for循环执行的流程是: var i=0在循环开始时只执行一次 但是每次执行会判断i < content.childNodes.length; 当执行完所有定义体后,再执行i++; 因此你每次将i重置为0,再执行i++,相当于每次都执行的删除childNodes[1],因此你每次删除的都是空白节点。
2018-07-13 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468189    人
  • 解答问题       21891    个

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

进入课程

空白节点造成的removeChild一次性无法删除的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信