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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我要按三次才能全部刪除,怎么做到點擊一次就能全部刪除?

為什么我要按三次才能全部刪除,怎么做到點擊一次就能全部刪除?

劍斂卿塵 2015-12-15 18:07:16
<!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?banana=document.getElementsByTagName("h1"); ??for?(var?i=0;i<banana.length;i++)?{ ??????content.removeChild(banana[i]); ??} ?? } </script> <button?onclick="clearText()">清除節點內容</button> </body> </html>
查看完整描述

3 回答

已采納
?
朝花

TA貢獻6條經驗 獲得超8個贊

你的循環在判斷的時候 會重新banana.length的值,每刪除一個,這個值就改變了一次,所以不能一次全部清除。

及 ?i=0 的時候 length= 5 ,i=1 length=4 ,i=2 length=3, i=3 ,i<length 不滿足,跳出循環 所以第一次只刪除了3個,依次類推,需要刪幾次。改變一下 如上我回復的代碼,即可一次全部清除。

查看完整回答
1 反對 回復 2015-12-15
?
lynhao

TA貢獻81條經驗 獲得超57個贊

?因為沒點一次執行一次for循環總共循環三次,要全部刪除用個while試試
?while(div.hasChildNodes())?//當div下還存在子節點時?循環繼續
????{
????????div.removeChild(div.firstChild);
????}


查看完整回答
反對 回復 2015-12-15
  • 3 回答
  • 0 關注
  • 1707 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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