问答详情
源自:9-14 删除节点removeChild()

请教大神解答?

<!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");
  // 在此完成该函数
 
  //法一,一次性清除节点内容
  for(var i=0;i<content.childNodes.length;i++){
      if(content.childNodes[i].nodeType!=1){  
         continue; 
      }else{
         content.removeChild(content.childNodes[i]);   
      }
        
      }

请问为什么要content.childNodes[i].nodeType!=1

提问者:三水朝山 2016-07-24 20:22

个回答

  • 小白t
    2016-07-24 23:36:13

    这里nodeType的返回值不为1就是说它没有元素在里面,就不用管它的,就继续遍历后面的节点,当nodeType返回值为1的时候就是说这个节点下面还有元素,就需要remove掉。