亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

removeChild問題

<div id="content">

<h1>html</h1>

<h2>php</h2>

<h3>javascript</h3>

<h4>jquery</h4>

<h5>java</h5>

</div>

<script type="text/javascript">

function clearText(){

var content=document.getElementById("content");

var cnode = content.childNodes;

for(var i = 0; i < cnode.length; i++){

/*document.write( cnode[i].nodeName + "a" + "<br />");

document.write( cnode[i].nodeType + "b" + "<br />");

document.write( cnode[i].nodeValue + "c" + "<br />");*/

? ? content.removeChild(cnode[i]);

}

}

</script>

<button onclick="clearText()">清除節點內容</button>

為什么要點擊兩次按鈕才能刪除#content中的幾個元素?是瀏覽器節點bug問題嗎

正在回答

3 回答

while(content.childNodes.length)?{
??content.removeChild(content.lastChild);
}

抖個機靈跑

1 回復 有任何疑惑可以回復我~

你把 for( )循環語句更改一下,(i=cnode.length,i>=0;i++)? 因為正序刪除 ,每次i都變

0 回復 有任何疑惑可以回復我~

這是瀏覽器的原音,你用的瀏覽器中會將空白節點也轉換為其中的一個節點,你第一次刪除的是空白節點,第二次才刪除到元素,如果你有疑問的話? 可以將每次刪除的內容的nodeValue和nodeName輸出看看,就知道了,

如果你將div內的換行去掉應該就沒了。

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

權耀揚 提問者

div換行去了還是有問題
2016-06-16 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468969    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

removeChild問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號