石榴笑了
2018-08-18 09:35
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
</head>
<body>
<div id="content">
<h1>html</h1>
<h1>php</h1>
<h1>javascript</h1>
<h1>jquery</h1>
<h1>java</h1>
</div>
<script type="text/javascript">
var content=document.getElementById("content");
var nodetemp=content.childNodes;
// 在此完成该函数
//document.write(nodetemp[1]);
/*document.write("还未删除之前子节点数组的长度为:"+nodetemp.length+"<br>");
for(var j=0;j<nodetemp.length;j++){
document.write(nodetemp[j].nodeType+"-"+nodetemp[j].nodeValue+"-"+nodetemp[j].innerHTML+"<br>");
}*/
function clearText() {
var i=0;
while(i<nodetemp.length){
if(nodetemp[i].nodeType==3){
i++;
}else{
content.removeChild(nodetemp[i]);
i=i+1;
}
}
}
/*document.write("此时子节点数组的长度为:"+nodetemp.length+"<br>");
for(var z=0;z<nodetemp.length;z++){
document.write(nodetemp[z].nodeType+"-"+nodetemp[z].nodeValue+"-"+nodetemp[z].innerHTML+"<br>");*/
</script>
<button onclick="clearText()">清除节点内容</button>
</body>
</html>
求指点,不知道自己这样子写对不对,虽然已经将节点类型为元素--1的节点都删了。
你这段代码可以达到目的,但如果你把if语句注释掉,就会出现BUG,删除结点应该从后往前删,因为从前面删除之后后面节点的索引值会变化.
JavaScript进阶篇
468063 学习 · 21891 问题
相似问题