问答详情
源自:9-8 访问子节点childNodes

#text的文本值

  var d =  document.getElementsByTagName("div")[0].childNodes;

         for(var i=0;i<d.length;i++)

            {

                 document.write("节点名称:"+d[i].nodeName+"</br>");

                 document.write("节点类型:"+d[i].nodeType+"</br>");

                 document.write("节点值:"+d[i].nodeValue+"</br>");

                 document.write("</br>");

            }

 

_____________


节点名称:#text
节点类型:3
节点值: javascript 

节点名称:P
节点类型:1
节点值:null

节点名称:#text
节点类型:3
节点值: 

节点名称:DIV
节点类型:1
节点值:null

节点名称:#text
节点类型:3
节点值: 

节点名称:H5
节点类型:1
节点值:null

节点名称:#text
节点类型:3
节点值:

—————————— 

怎么  节点名称:#text

节点值是空的? 

为什么不是依次是 javascript   jQuery  和 PHP


提问者:puffbaby 2015-01-10 15:27

个回答

  • puffbaby
    2015-01-10 15:59:24

    纠正  “两个节点之间如果有空白比如</p> 和</div> 之间” 应该是 “两个节点之间如果有空白比如</p> 和<div> 之间”

    也就是上一个闭合标签和下一个开始标签之间是否有空格,决定了节点元素的多和少

  • puffbaby
    2015-01-10 15:54:49

    54b0d9f40001780c05000100.jpg

    红色框框标注的 从上到下 从左到右  依次对应的是输出的7个结点。两个节点之间如果有空白比如</p> 和</div> 之间有空白则算一个空白节点,如果没有,则不计节点.当代码紧挨着写的时候没有空格则是如下:

    54b0daab00019cb105000039.jpg

    4个标注的 从左往右 依次为输出的4个节点。

  • puffbaby
    2015-01-10 15:49:26

    终于搞懂了:

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

    这样的结果是
    节点名称:#text
    节点类型:3
    节点值:javascript

    节点名称:P
    节点类型:1
    节点值:null

    节点名称:DIV
    节点类型:1
    节点值:null

    节点名称:H5
    节点类型:1
    节点值:null

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

    这样的结果:

    节点名称:#text
    节点类型:3
    节点值: javascript 

    节点名称:P
    节点类型:1
    节点值:null

    节点名称:#text
    节点类型:3
    节点值: 

    节点名称:DIV
    节点类型:1
    节点值:null

    节点名称:#text
    节点类型:3
    节点值: 

    节点名称:H5
    节点类型:1
    节点值:null

    节点名称:#text
    节点类型:3
    节点值: