关于childNodes获得的数组问题

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

慕斯卡5772095

2017-10-11 09:08

<ul><li>javascript</li><li>jQuery</li><li>PHP</li></ul>,对这里面的ul进行childNodes,为何得到的数组长度可能为7


写回答 关注

1回答

  • 六月的飞羽
    2017-10-13 02:33:01

    分情况

    如果是像下面这种写法:

    <ul><li>javascript</li><li>jQuery</li><li>PHP</li></ul>

    childNodes的长度只能是3,因为不存在空白,就没有文本节点。

    但如果是这种写法:

    <ul> 文本节点1
      元素节点1<li>javascript</li> 文本节点2
      元素节点2<li>jQuery</li> 文本节点3
      元素节点3<li>PHP</li> 文本节点4
    </ul>

    IE会无视空白的文本节点,所以在IE里,这样写得到的长度也依然是3;

    但在其他的浏览器里,空白的文本节点是不会被忽略的,所以子节点的长度为元素节点3 + 空白的文本节点4 = 7。

JavaScript进阶篇

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

468061 学习 · 21891 问题

查看课程

相似问题