问答详情
源自:9-9 访问子节点的第一和最后项

本题调整代码后为何就能运行,到底如何调整代码呢~

本题调整代码后为何就能运行,到底如何调整代码呢~

为何nodeValue总是显示为null呢  而不是应该显示文本的内容呢?


提问者:羽. 2016-03-08 11:33

个回答

  • 夜山狼
    2016-03-10 15:36:57

    除了IE浏览器之外其他的浏览器把元素之间的空格也算做子节点,你把开始div和P之间的空格删除,然后把h标签和/div空格删除,在试试

  • LeingK
    2016-03-10 15:33:04

    原因是标签之间存在间隙,解决的方法就是去掉间隙

    <div id="con"><p>javascript</p><div>jQuery</div><h5>PHP</h5></div>

    这样nodeValue不会显示为null,而是显示成空白,

    想要得到文本内容,可以innerHTML


  • 沙漠之舟08
    2016-03-08 15:23:27

    不管是第一行的firstChild或者第二行的lastChild都是元素,元素的value是null。你要显示文本内容,可以在firstChild.firstChild.nodeValue和lastChild.firstChild.nodeValue。这时第二层的firstChild就是textNode,textNode的nodeValue就是text本身。