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

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

為什么變量在FOR循環外面是一個一個刪除的,到了FOR循環里面就一次兩個了?

<!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");//獲取div

? ?var date=content.childNodes[i];//變量date為div中第i+1個子節點

? ?for(i=0;i<content.childNodes.length;i++)? //for循環,i小于div中子節點的長度

? ?{

? ? ?

? ? ? ? ? content.removeChild(date)? ?//刪除diiv中第i+1個子節點

? ?}

?

??

}

</script>


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




</body>

</html>


正在回答

1 回答

首先,你貼出來的整段代碼里有一個錯,使用的i沒有定義,我不知道你是怎么運行成功的。

然后,如果你說的變量date放在代碼外面是如下:

var i=0;

var date=content.childNodes[i];

? ?for(i=0;i<content.childNodes.length;i++)

? ?{

? ? ? ? content.removeChild(date) ;

? ?}

那么一行一行的刪除則是因為date在外面定義時已經固定為content的第一個子節點了,所以你每次只能刪一個。

最后,將變量date放在代碼循環里面是如下:

? ?for(var i=0;i<content.childNodes.length;i++)

? ?{

? ? ? ?var date=content.childNodes[i];

? ? ? ? content.removeChild(date) ;

? ?}

那么兩個兩個的刪除則是因為原順序為 html? php? javascript? jquery? java,i=0時,刪了html,然后順序變為php? javascript? jquery? java,故i=0時,則會刪除Javascript,依次推下去。

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

舉報

0/150
提交
取消

為什么變量在FOR循環外面是一個一個刪除的,到了FOR循環里面就一次兩個了?

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

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

幫助反饋 APP下載

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

公眾號

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