美文网首页
浏览器的dom兼容

浏览器的dom兼容

作者: Icciaf | 来源:发表于2017-08-31 17:30 被阅读0次

    使用childNodes来遍历dom元素子节点

    <ul>
        <li>123</li>
        <li>123</li>
        <li>123</li>
    </ul>
    

    对于上面一段代码,如果IE来解析,<ul>元素会有3个子节点,就是3个<li>。对于其他浏览器,则会解析出7个元素,3个<li>和4个文本节点。

    <ul><li>123</li><li>123</li><li>123</li></ul>
    

    如果将空白符删除,那么所有浏览器都会返回3个子节点。

    如果需要使用childNodes来遍历dom元素子节点,需要先检查一下元素的nodeType属性。

    for(let i = 0,len = element.childNodes.length; i<len; i++){
      if(element.childNodes[i].nodeType == 1){
        //...
      }
    }
    

    常见dom类型的nodeType:

    domType nodeType
    Element 1
    Attr 2
    Text 3
    Comment 8
    Document 9

    相关文章

      网友评论

          本文标题:浏览器的dom兼容

          本文链接:https://www.haomeiwen.com/subject/xzoqjxtx.html