9-8 :到底是几个子节点?

来源:9-8 访问子节点childNodes

ZF_Steven

2015-06-10 21:06

到底是几个子节点?用IE11、360、搜狗浏览器都试过,都说是7个子节点,为什么跟9-8节的注意部分说的不一样。请大神指点!

代码:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
</head>
<body>
<div>
  javascript 
  <p>javascript</p>
  <div>jQuery</div>
  <h5>PHP</h5>
</div>
<script type="text/javascript">
 var a = document.getElementsByTagName("div")[0].childNodes;
    document.write("DIV子节点的个数:"+a.length+"个"+"<br/>") ;
   
 for(var i=0;i<a.length;i++){
    document.write("<br/>"+"第"+(i+1)+"个子节点:"+"<br/>"+"子节点名称:"+a[i].nodeName+"<br/>");
    document.write("子节点值:"+a[i].nodeValue+"<br/>");
    document.write("子节点类型:"+a[i].nodeType+"<br/>");
}
 
 
</script>
</body>
</html>

—————————————————————————————————————————————

结果:

javascript

javascript

jQuery

PHP

DIV子节点的个数:7个

第1个子节点:
子节点名称:#text
子节点值:   javascript    
子节点类型:3

第2个子节点:
子节点名称:P
子节点值:null
子节点类型:1

第3个子节点:
子节点名称:#text
子节点值:  
子节点类型:3

第4个子节点:
子节点名称:DIV
子节点值:null
子节点类型:1

第5个子节点:
子节点名称:#text
子节点值:  
子节点类型:3

第6个子节点:
子节点名称:H5
子节点值:null
子节点类型:1

第7个子节点:
子节点名称:#text
子节点值:
子节点类型:3

写回答 关注

2回答

  • 品茗见南山
    2015-06-24 11:20:42

    你好。这个是因为有空格这样的文本节点的原因导致的。

    比如你这

    第7个子节点:
    子节点名称:#text
    子节点值: 
    子节点类型:3

    他就是一个空格。


    你把整个div收缩下就行了。

    写成我下面这样的格式。

    <div>javascript<p>javascript</p><div>jQuery</div><h5>PHP</h5></div>

    Smoke_... 回复品茗见南山

    嗯,理解了,谢谢!

    2015-07-06 12:25:04

    共 3 条回复 >

  • 伊兮尘昔
    2015-06-11 09:52:50

    你用IE8、9试试看看,应该是3个节点

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题