zoukankan      html  css  js  c++  java
  • 关于dom获取元素的几种方式

    原文链接:https://blog.csdn.net/levinhax/article/details/71274456

    获取元素DOM对象有很多种方法,以前一直在用getElementById和getElementsByTagName等,现在对这些方法和querySelector做一个总结.
    常见的获取元素的方法有3种,分别是通过元素ID、通过标签名字和通过类名字来获取。
    DOM提供了一个名为getElementById的方法,这个方法将返回一个与之对应id属性的节点对象,它是document对象特有的函数,只能通过其来调用该方法,使用方法如下:document.getElementById('idName');

    getElementsByTagName方法返回一个对象数组(准确的说是HTMLCollection集合),返回元素的顺序是它们在文档中的顺序,传递给 getElementsByTagName() 方法的字符串可以不区分大小写,使用方法如下:document.getElementsByTagName(tagName);

    DOM还提供了getElementsByClassName方法来获取指定class名的元素,该方法返回文档中所有指定类名的元素集合,作为 NodeList 对象。NodeList 对象代表一个有顺序的节点列表。NodeList 对象 我们可通过节点列表中的节点索引号来访问列表中的节点(索引号由0开始), 所以有时使用时要指定下标,使用方法如下:document.getElementsByClassName('className');

    querySelector() 方法返回匹配指定 CSS 选择器元素的第一个子元素 。 该方法只返回匹配指定选择器的第一个元素。如果要返回所有匹配元素,需要使用 querySelectorAll() 方法替代.

    由于querySelector是按css规范来实现的,所以它传入的字符串中第一个字符不能是数字.

    最后再根据查询的资料总结一下:
    query选择符选出来的元素及元素数组是静态的,而getElement这种方法选出的元素是动态的。静态的就是说选出的所有元素的数组,不会随着文档操作而改变.
    在使用的时候getElement这种方法性能比较好,query选择符则比较方便.
    最后需要注意一点就是getElementById和getElementsByTagName是兼容ie678浏览器的,getElementsByClassName和querySelector方法属于h5的新增内容,不兼容ie678浏览器。

  • 相关阅读:
    Python——项目-小游戏_正式的进入开发阶段_1阶段 主程序&背景移动
    Ajax-使用教程
    JavaScript——类还有对象
    Python——项目-小游戏3-精灵?蓝精灵?
    Python——项目-小游戏2-动画绘制
    jQuery——有关于jQuery操作 属性,元素,还有尺寸位置等
    Python——项目-小游戏
    jQuery入门
    JavaScript——WEBAPIS_有关于移动端特效,还有本地存储
    性能优化之Angular前端优化总结
  • 原文地址:https://www.cnblogs.com/flower8/p/11420792.html
Copyright © 2011-2022 走看看