為什么結(jié)果是這個?
<!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">
function clearText() {
? var content=document.getElementById("content");
? for(var i=0;i<content.childNodes.length;i++){
? ? ? var x=content.removeChild(content.childNodes[i]);
? ? ? document.write("刪除的節(jié)點為:"+x.innerHTML+"<br>");
? ? ??
? }
? // 在此完成該函數(shù)
??
??
}
</script>
<button onclick="clearText()">清除節(jié)點內(nèi)容</button>
</body>
</html>
?刪除的節(jié)點為:undefined
刪除的節(jié)點為:undefined
刪除的節(jié)點為:undefined
刪除的節(jié)點為:undefined
刪除的節(jié)點為:undefined
刪除的節(jié)點為:undefined
2016-02-04
function clearText() {
? var content=document.getElementById("content");
? for(var i=1;i<content.childNodes.length;++i){ ?
? ? var x = content.removeChild(content.childNodes[i]);
document.write("刪除的節(jié)點為:"+x.innerHTML+"<br>");
? }
}
改成這樣就可以了。為什么下標是1,可能是因為瀏覽器把一些看不到的元素也當成了子節(jié)點;可以alert(content.childNodes.length),看一下長度,會發(fā)現(xiàn)比你想像的多了很多
2016-02-04
function clearText() {
? var content=document.getElementById("content");
? // 在此完成該函數(shù)
? var childs=content.childNodes;
? for(var i=0;i<=childs.length;i++){
????? if(childs[i].nodeType!=1){continue;}else{
????? content.removeChild(childs[i]);
????? }
? }
//要考慮到兼容性,斜體