zoukankan      html  css  js  c++  java
  • JS获取DOM元素

    1、childNodes:获取子节点,不同浏览器表现不同;
      IE:只获取元素节点;
      非IE:获取元素节点与文本节点;
      解决方案:if(childNode.nodeName=="#text") continue 或者 if(childNode.nodeType != '3') continue

    2、children:获取元素子节点,浏览器表现相同。
    因此建议使用children。

    childNodes返回的是节点的子节点集合,包括元素节点、文本节点还有属性节点。
    children返回的只是节点的元素节点集合,所以返回的只有span元素。

    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与nextElementSibling
      相同点:获取后一个兄弟节点对象;
      不同点:1、nextSibling:IE6,7,8:后一个兄弟元素节点;
          非IE6,7,8:后一个兄弟节点,文本节点或者元素节点;
          2、lastElementChild:IE6,7,8:不支持;
          非IE6,7,8:后一个兄弟元素节点;

    6、previousSibling与previousElementSibling
      相同点:获取前一个兄弟节点对象;
      不同点:1、previousSibling:IE6,7,8:前一个兄弟元素节点;
          非IE6,7,8:前一个兄弟节点,文本节点或者元素节点;
          2、previousElementChild:IE6,7,8:不支持;
          非IE6,7,8:前一个兄弟元素节点;

    7、parentNode:获取父元素,不存在兼容性问题。

  • 相关阅读:
    python获取豆瓣电影TOP250的所有电影的相关信息
    使用python批量获取excel的sheet名称
    第1章 初见网络爬虫
    时间序列--日期的范围、频率及移动
    时间序列--时间序列基础
    时间序列--日期和时间数据类型及工具
    绘图与可视化--pandas中的绘图函数
    绘图与可视化--matplotlib API入门
    pandas基础--层次化索引
    pandas基础--缺失数据处理
  • 原文地址:https://www.cnblogs.com/ranyonsue/p/7843265.html
Copyright © 2011-2022 走看看