为什么先删除4个,然后剩下php,jq,然后点一下删除一个
//content.childNodes.length 是动态变化的。 //使用while,比较适合 while(content.childNodes.length > 0) content.removeChild(content.firstChild);
content的子节点长度随着删除的进行会变化,所以需要将其长度在循环外进行
如果你的是非IE浏览器,浏览器会计算空节点,所以会删不完,建议从第一个或最后一个开始删,具体的节点情况看9-11节
function clearText() { var content=document.getElementById("content"); // 在此完成该函数 var allnode=content.childNodes; var num=allnode.length; for (var i=0;i<num;i++){ var x=content.removeChild(allnode[0]); //return allnode; } }
循环 i=0执行完了后 标签结构已经发生变化了 执行i=1时其实删的是以前的childNodes[2]