js刪除執行元素下所有的子元素

admin發表於2017-03-24

本章節介紹一下如何刪除指定元素下的所有子元素,廢話不多說,直接看程式碼。

一.使用innerHTML:

[HTML] 純文字檢視 複製程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<script type="text/javascript"> 
window.onload=function(){ 
  var obox=document.getElementById("box");
  var obt=document.getElementById("bt");
  obt.onclick=function(){
    obox.innerHTML="";
  }
} 
</script> 
</head> 
<body> 
<ul id="box">
  <li>螞蟻部落一</li>
  <li>螞蟻部落二</li>
  <li>螞蟻部落三</li>
  <li>螞蟻部落四</li>
  <li>螞蟻部落五</li>
</ul>
<input type="button" id="bt" value="檢視效果"/>
</body> 
</html>

以上程式碼可以將div中的所有內容情況的一乾二淨,無論是文字節點還是元素節點,在標準瀏覽器中,空格和換行算是文字節點,有時候我們只想清除元素節點,程式碼如下:

[HTML] 純文字檢視 複製程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<script type="text/javascript"> 
window.onload=function(){ 
  var obox=document.getElementById("box");
  var lis=obox.getElementsByTagName("li");
  var len=lis.length;
  var obt=document.getElementById("bt");
  var theArray=[];
  obt.onclick=function(){
    for(var index=0;index<len;index++){
      theArray.push(lis[index]);
    }
    for(var i=0;i<theArray.length;i++){
      obox.removeChild(theArray[i]);
    }
  }
} 
</script> 
</head> 
<body> 
<ul id="box">
  <li>螞蟻部落一</li>
  <li>螞蟻部落二</li>
  <li>螞蟻部落三</li>
  <li>螞蟻部落四</li>
  <li>螞蟻部落五</li>
</ul>
<input type="button" id="bt" value="檢視效果"/>
</body> 
</html>

相關文章