首页 > 代码库 > childNodes的兼容性问题

childNodes的兼容性问题

元素.childNodes:只读 属性 子节点列表集合

标准浏览器下:包含文本和元素类型节点,也会包含非法嵌套的子节点

非标准浏览器下:只包含元素类型节点,ie7下不会包含非法嵌套的子节点

childNodes只包含一级子节点,不包含后辈孙级节点

 

我们来看例子:

<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>无标题文档</title></head><body><div>    <ul id="u1">        <li></li>        <li></li>        <li></li>        <li></li>        <p></p>    </ul></div><script>var dom = document.getElementById(u1);alert(dom.childNodes.length);</script></body></html>

ie9以上:

技术分享

ie8:

技术分享

ie7:

技术分享

 

由此可见childNodes的兼容性问题比较大,所以在工作中推荐使用children

childNodes的兼容性问题