為什么一開始要按兩下才開始刪除節(jié)點,而且一下刪除兩個。后面就是按一下刪除一個了?
<script type="text/javascript">
function clearText() {
? var content=document.getElementById("content");
? // 在此完成該函數(shù)
? for(i=0;i<content.childNodes.length;i++){
? ? ? var cinchild = content.childNodes[i];
? ? ? content.removeChild(cinchild);
? ? ??
? }
??
}
看完這位大師的講解,小的還是不理解,為什么第一次做的時后只會刪去空值,而不是全部刪除呢?
2021-03-24
<script type="text/javascript">
function clearText() {
? var content=document.getElementById("content");
? // 在此完成該函數(shù)
? for(i=1;i<content.childNodes.length;i++){
? ? ? var cinchild = content.childNodes[i];
? ? ? content.removeChild(cinchild);
? ? ??
? }
??
}
2020-08-13
原因是conten.childNodes一直在變
簡單分解下:
第一次循環(huán), i=0, 此時刪除的是第一個#text(空文本節(jié)點),這應(yīng)該沒有疑問,刪除后數(shù)組就變?yōu)椋篬"html","#text","php","#text","javascript","#text","jquery","#text","java","#text"], length為10
那么第二次循環(huán),i=1, 此時的childNodes[1]操作的就是第一次刪除后得到的數(shù)組,那么當(dāng)然是#text(原有的第二個空文本節(jié)點)
....
以此內(nèi)推,現(xiàn)在就應(yīng)該懂了