亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > HTML > 正文

html5中JavaScript removeChild 刪除所有節點

2024-08-26 00:17:37
字體:
來源:轉載
供稿:網友

點評:通過JavaScript可以刪除所有節點,本文里主要討論 removeChild 函數,大家可以看看下面的示例

假設div里有這么些內容:

復制代碼

代碼如下:


<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=GBK">
<title>iScroll demo: simple</title>
<script type="text/javascript">
function deleteData(){
}
</script>
<style type="text/css" media="all">
body,ul,li {
padding:0;
margin:0;
border:0;
}
body {
font-size:12px;
-webkit-user-select:none;
-webkit-text-size-adjust:none;
font-family:helvetica;
}
</style>
</head>
<body>
<div ><input type="submit" value="刪除li節點" /> </div>
<div >
<ul>
<li>Pretty row 1</li>
<li>Pretty row 2</li>
<li>Pretty row 3</li>
<li>Pretty row 4</li>
<li>Pretty row 5</li>
<li>Pretty row 6</li>
<li>Pretty row 7</li>
<li>Pretty row 8</li>
<li>Pretty row 9</li>
<li>Pretty row 10</li>
<li>Pretty row 40</li>
</ul>
</div>
</body>
</html>


現在要通過JavaScript的功能,將它們清空。

雖然可以通過一句代碼直接實現:

document.getElementById("content").innerHTML=""

但是本文里主要討論 removeChild 函數。

很想當然地以為借助下面的代碼就能完成:

復制代碼

代碼如下:


function deleteData(){
var el = document.getElementById('thelist');
var liNodes = document.getElementsByTagName("li");
alert(liNodes.length);
for(var i = 0; i < liNodes.length; i++){
alert("刪除"+i+" liNodes[i]="+ liNodes[i]);
el.removeChild(liNodes[i]);
//<-- el.removeChild(liNodes[i]);
}
}


沒想到,點擊了按鈕后,竟然只清除掉1、3、5...,而2、4、6....竟然沒有消失,

問題從一開始就產生了:

刪除掉第一個節點后,后面節點的順序全部發生了變化:原來的第二個節點往前蹭,成為新的第一個節點;原來的第三個節點,成為第二個節點……

于是呢,接下來原本是要刪除第二個節點的,卻將最原始的第三個節點給刪除掉了。

最終,并沒有全部刪除,只刪除掉1、3、5,留下了2、4、6。

語法沒有錯誤,但是得不到所要的結果,這就是算法上面的錯誤!該如何修正呢?

“順序刪除”不行,那就“逆序刪除”吧。將 for 語句修改一下:

復制代碼

代碼如下:


function deleteData(){
var el = document.getElementById('thelist');
var liNodes = document.getElementsByTagName("li");
alert(liNodes.length);
for(var i = liNodes.length-1; i >=0; i--){
alert("刪除"+i+" liNodes[i]="+ liNodes[i]);
el.removeChild(liNodes[i]);
//<-- el.removeChild(liNodes[i]);
}
}


試試吧,成功了!還可以使用下面方法:

復制代碼

代碼如下:


function deleteData() {
var el = document.getElementById('thelist');
var liNodes = document.getElementsByTagName("li");
alert(liNodes.length);
for (var i=0;i<el.childNodes.length;i++){
var childNode = el.childNodes[0]; //總是刪除第一個,是不是更簡單
el.removeChild(childNode);
}
}


完成代碼如下所示:

復制代碼

代碼如下:


<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=GBK">
<title>iScroll demo: simple</title>
<script type="text/javascript">
function initData(){
var el = document.getElementById('thelist');
var liNodes = document.getElementsByTagName("li");
alert(liNodes.length);
for(var i = liNodes.length-1; i >=0; i--){
alert("刪除"+i+" liNodes[i]="+ liNodes[i]);
el.removeChild(liNodes[i]);
//<-- el.removeChild(liNodes[i]);
}
}
</script>
<style type="text/css" media="all">
body,ul,li {
padding:0;
margin:0;
border:0;
}
body {
font-size:12px;
-webkit-user-select:none;
-webkit-text-size-adjust:none;
font-family:helvetica;
}
</style>
</head>
<body>
<div ><input type="submit" value="刪除li節點" /> </div>
<div >
<ul>
<li>Pretty row 1</li>
<li>Pretty row 2</li>
<li>Pretty row 3</li>
<li>Pretty row 4</li>
<li>Pretty row 5</li>
<li>Pretty row 6</li>
<li>Pretty row 7</li>
<li>Pretty row 8</li>
<li>Pretty row 9</li>
<li>Pretty row 10</li>
<li>Pretty row 40</li>
</ul>
</div>
</body>
</html>


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美视频在线看| 日韩乱码在线视频| 色午夜这里只有精品| 亚洲人在线视频| 久久这里只有精品99| 日韩成人久久久| 青草青草久热精品视频在线网站| 日韩性xxxx爱| 自拍偷拍亚洲一区| 久久香蕉频线观| 久久国产精品99国产精| 中文字幕综合一区| 日韩精品极品在线观看播放免费视频| 欧美国产日本在线| 国产91在线播放九色快色| 日韩视频免费大全中文字幕| 91高清在线免费观看| 91久久久久久久久久久久久| 成人黄色短视频在线观看| 欧美性做爰毛片| **欧美日韩vr在线| 欧美精品免费播放| 97成人在线视频| 欧美精品在线免费观看| 亚洲精品在线看| 91精品国产精品| 国语自产精品视频在线看抢先版图片| 亚洲欧美日韩中文视频| 91久久久久久久久久久| 国产99视频在线观看| 亚洲高清色综合| 久99九色视频在线观看| 清纯唯美亚洲综合| 欧美国产在线视频| 欧美日韩另类视频| 日韩www在线| 精品久久久久久中文字幕一区奶水| 亚洲欧美国产精品专区久久| 久久人人爽人人爽人人片av高清| 久久99久国产精品黄毛片入口| 91精品国产高清久久久久久| 中文字幕9999| 欧美精品成人91久久久久久久| 88xx成人精品| 国产精自产拍久久久久久蜜| 亚洲欧美自拍一区| 国产一区二区三区直播精品电影| 色综合导航网站| 亚洲欧美激情另类校园| 日韩电影免费观看中文字幕| 国产这里只有精品| 一区二区三欧美| 国产一区二区在线免费| 九九久久国产精品| 国产在线视频欧美| 欧美激情欧美狂野欧美精品| 国产精品极品尤物在线观看| 91香蕉嫩草影院入口| 国产精品色婷婷视频| 成人免费高清完整版在线观看| 亚洲精品久久久久久久久| 精品国产一区二区三区久久狼5月| 亚洲自拍av在线| 亚洲国产精品视频在线观看| 亚洲a在线播放| 成人欧美一区二区三区在线| 亚洲网站视频福利| 国产精品爱久久久久久久| 亚洲一区中文字幕在线观看| 日韩在线精品视频| 日韩av在线免播放器| 欧美日韩亚洲天堂| 日本三级久久久| 亚洲黄色片网站| 亚洲高清不卡av| 国模视频一区二区| 日韩视频在线观看免费| 深夜成人在线观看| 欧美午夜xxx| 日韩av在线影视| 欧美电影在线观看网站| 欧美精品国产精品日韩精品| 一区二区三区天堂av| 亚洲天堂网在线观看| 日韩欧美亚洲一二三区| 久久久国产视频91| 亚洲黄色在线看| 国产一区二区丝袜| 成人免费观看49www在线观看| 久久免费观看视频| 久久久久免费视频| 欧美性生交大片免网| 国产精品视频成人| 亚洲一区二区在线播放| 亚洲夜晚福利在线观看| 91精品久久久久久久久中文字幕| 日韩中文字幕在线观看| 最新69国产成人精品视频免费| 久久久在线免费观看| 91精品国产综合久久香蕉的用户体验| 992tv成人免费影院| 欧美一区二区色| 日本三级韩国三级久久| 日韩视频在线免费观看| 亚洲白拍色综合图区| 国产裸体写真av一区二区| 欧美日韩国内自拍| 亚洲日本aⅴ片在线观看香蕉| 国产深夜精品福利| 欧美最猛黑人xxxx黑人猛叫黄| 欧美激情国产精品| 久久影院中文字幕| 欧美日韩黄色大片| 日韩在线视频国产| 精品久久久999| 91av在线网站| 国产在线一区二区三区| 久久久久久久久久久免费精品| 国产69精品久久久久99| 97在线看免费观看视频在线观看| 国产午夜精品视频免费不卡69堂| 超在线视频97| 欧美日韩国产激情| 久久久久久91香蕉国产| 欧美视频中文字幕在线| 日韩欧美在线视频| 日韩成人在线电影网| 国产精品入口日韩视频大尺度| 国产99在线|中文| 91九色综合久久| 亚洲免费伊人电影在线观看av| 国产剧情日韩欧美| 影音先锋欧美在线资源| 这里只有精品在线播放| 国产精品视频免费在线| 国产成人中文字幕| 国模吧一区二区| 日本19禁啪啪免费观看www| 欧美精品久久久久久久久久| 日韩av在线最新| 在线视频精品一| 日韩欧美中文在线| 久久青草福利网站| 成人午夜黄色影院| 久久精品在线播放| 一区二区三区视频在线| 日韩精品视频观看| 97视频人免费观看| 欧美一级淫片videoshd| 亚洲视频精品在线| 久久91亚洲精品中文字幕| 91极品视频在线| 97香蕉超级碰碰久久免费软件| 中文字幕欧美日韩| 日韩精品在线免费观看| 不卡av日日日| 国产精品第100页| 国产精品视频地址| 91成品人片a无限观看| 羞羞色国产精品| 中文字幕亚洲色图| 日韩网站免费观看高清| 日本精品久久久久久久| 日韩美女视频中文字幕|