为了账号安全,请及时绑定邮箱和手机立即绑定

不懂这里是什么意思 if (content.childNodes[i].nodeType!=1){ continue; }

<!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]);
           }
       }


   }
</script>

<button onclick="clearText()">清除节点内容</button>



</body>
</html>

正在回答

2 回答

在DOM树里面 每一个节点都是有一个特殊的值进行标注的。

表示为的节点属性为nodeType。

其中只有nodeType值为1的时候才代表这是一个元素节点(ElementNode)。

1 回复 有任何疑惑可以回复我~
#1

慕数据9493197 提问者

嗯嗯 谢谢你 现在明白了
2016-09-14 回复 有任何疑惑可以回复我~
#2

慕数据9493197 提问者

非常感谢!谢谢大神的解答
2016-09-14 回复 有任何疑惑可以回复我~

在非IE浏览器中,任意一个空格,一个换行都会被认为一个节点,所以需要这种判断来过滤这种非元素的DOM节点

2 回复 有任何疑惑可以回复我~
#1

慕数据9493197 提问者

嗯嗯 谢谢你 现在懂了
2016-09-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

不懂这里是什么意思 if (content.childNodes[i].nodeType!=1){ continue; }

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信