zoukankan      html  css  js  c++  java
  • js 中childNodes与children的区别,firstChild与firstElementChild区别

    1、childNodes:获取节点,不同浏览器表现不同;
    
      IE:只获取元素节点;
    
      非IE:获取元素节点与文本节点;
    
      解决方案:if(childNode.nodeName=="#text") continue 或者 if(childNode.nodeType != '3') continue 
    
    2、children:获取元素节点,浏览器表现相同。
    
      因此建议使用children。
    
    3、firstChild与firstElementChild
    
      相同点:获取父节点下的第一个节点对象;
    
      不同点:1、firstchild:IE6,7,8:第一个元素节点;
    
                   非IE6,7,8:第一个节点,文本节点或者元素节点;
    
          2、firstElementChild:IE6,7,8:不支持;
    
                      非IE6,7,8:第一个元素节点;
    
    function firstChild(obj){
        if(obj.firstElementChild) return obj.firstElementChild;
        return obj.firstChild
    }
    4、lastChild与lastElementChild
    
      相同点:获取父节点下的最后一个节点对象;
    
      不同点:1、lastchild:IE6,7,8:最后一个元素节点;
    
                   非IE6,7,8:最后一个节点,文本节点或者元素节点;
    
          2、lastElementChild:IE6,7,8:不支持;
    
                      非IE6,7,8:最后一个元素节点;
    
    5、nextSibling与nextElementChild
    
      相同点:获取后一个兄弟节点对象;
    
      不同点:1、nextSibling:IE6,7,8:后一个兄弟元素节点;
    
                   非IE6,7,8:后一个兄弟节点,文本节点或者元素节点;
    
          2、lastElementChild:IE6,7,8:不支持;
    
                      非IE6,7,8:后一个兄弟元素节点;
    
    6、previousSibling与previousElementChild
    
      相同点:获取前一个兄弟节点对象;
    
      不同点:1、previousSibling:IE6,7,8:前一个兄弟元素节点;
    
                   非IE6,7,8:前一个兄弟节点,文本节点或者元素节点;
    
          2、previousElementChild:IE6,7,8:不支持;
    
                      非IE6,7,8:前一个兄弟元素节点;
    
    7、parentNode:获取父元素,不存在兼容性问题。
    
    8、offsetParent:获取第一个设置定位的父元素;
    
         offsetLeft:获取离第一个定位父元素的左距离;
    
         offsetTop:获取离第一个定位父元素的上距离;
  • 相关阅读:
    Nokia Lumia 800销售反馈 苹果iPhone、三星Galaxy不敌800设计
    各大网站用户数据库被爆,遭大量网友下载
    最美发明家:GPS、手机通讯网都源自她的发明
    iPhone5或明年下半年发布 配备iOS6和A6芯片
    保存文件到手机内存
    2012年十大科技趋势:NFC、语音控制与弯曲屏
    电脑报独家报道:宽带升级全国真相调查
    Android的电话拨号器
    Java程序员成长之路(接口与抽象类究竟有什么区别)
    联系人相关
  • 原文地址:https://www.cnblogs.com/zlq92/p/12788795.html
Copyright © 2011-2022 走看看