為什么輸出的只有3個???還有中間的兩個內容呢?
<!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");
? // 在此完成該函數
?var j=content.childNodes.length;
? for(var i=0;i<j;i++){
? ? ?var x=content.removeChild(content.childNodes[i]);?
? ? ?document.write("刪除節點的內容:"+x.innerHTML+"</br>")
? }
??
??
}
</script>
<button onclick="clearText()">清除節點內容</button>
</body>
</html>
2016-03-18
?for(var i=0;i<j;i++){
? ? ?var x=content.removeChild(content.childNodes[i]);?
? ? ?document.write("刪除節點的內容:"+x.innerHTML+"</br>")
? }
從頭開始刪除,刪除一個節點,所有的節點都往前移一位了,第二次刪除的是content.childNodes[1],其實為初始列表中的content.childNodes[2]. 可將content.childNodes[i]改為content.childNodes[0]每次刪除第一個。或者從后面開始刪除。