querySelectorAll()getElementsByTagName()的区别

querySelectorAll()方法获取到NodeList对象,是静态的集合,getElementsByTagName()方法获取到HTMLCollection对象,是动态的集合。

querySelectorAll() getElementsByTagName()
返回值类型 NodeList集合 HTMLCollection集合
返回值状态 静态 动态

querySelectorAll()查询的是执行时的DOM结构。如果后续DOM结构后续的结构发生改变,他所查询的结构仍然不会变。

<body><ul><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li></ul><script>var myul = document.querySelector("ul");var myli = document.querySelectorAll("li");console.log(myli.length); //5var newli = document.createElement("li");myul.appendChild(newli);console.log(myli.length); //5,页面DOM结构虽然发生了改变,但是长度并没有发生改变,是静态的</script>
</body>

getElementsByTagName()获取页面的DOM结构,如果后续DOM结构后续的结构发生改变,他获取的结构也随之改变。

<body><ul><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li></ul><script>var myul = document.querySelector("ul");var myli = document.getElementsByTagName("li");console.log(myli.length); //5var newli = document.createElement("li");myul.appendChild(newli);console.log(myli.length); //6,页面DOM结构然发生了改变,长度也随之变化</script>
</body>

querySelectorAll()和getElementsByTagName()的区别相关推荐

  1. JavaScript querySelectorAll()和getElementsByTagName的区别

    querySelectorAll()和getElementsByTagName()两者的主要区别就是返回值.前者返回的是NodeList集合,后者返回的是HTMLCollection集合.. Node ...

  2. querySelectorAll 和 getElementsByTagName区别

    在<DOM的操作>一节中知道querySelectorAll()和getElementsByTagName()两个方法都是用来查找DOM元素的.通过上一节的学习,知道querySelect ...

  3. querySelectorAll( )和getElementsByTagName( )

    一. 区别 querySelectorAll()和getElementsByTagName()两者的主要区别就是返回值. 前者返回的是NodeList集合,是一个静态集合 后者返回的是HTMLColl ...

  4. getElementByID() getElementsByName() getElementsByTagName()的区别 .

    getElementByID() getElementsByName() getElementsByTagName()的区别 Web标准下可以通过getElementById(), getElemen ...

  5. javascript getElementByID,getElementsByName,getElementsByTagName的区别

    getElementByID,getElementsByName,getElementsByTagName区别 注意:方法区分大小写! 以人来举例说明,人有能标识身份的身份证,有姓名,有类别(大人.小 ...

  6. HTMLCollection 和 NodeList 的区别

    HTMLCollection HTMLCollection 表示一个包含了元素(元素顺序为文档流中的接口)的集合(通用集合),还提供了从该集合中选择元素的属性和方法. 例如使用 getElements ...

  7. querySelector querySelectorAll

    querySelector & querySelectorAll --->像CSS一样选择DOM 在传统的 JavaScript 开发中,查找 DOM 往往是开发人员遇到的第一个头疼的问 ...

  8. 原生的强大DOM选择器querySelector - querySelector和querySelectorAll

    在传统的 JavaScript 开发中,查找 DOM 往往是开发人员遇到的第一个头疼的问题,原生的 JavaScript 所提供的 DOM 选择方法并不多,仅仅局限于通过 tag, name, id ...

  9. DOM系列:DOM树和遍历DOM

    上一节,咱们整理了DOM系列中的第一篇,主要介绍浏览器与DOM相关的知识.从标题中我们可以看出来,今天所要学的东西包含两个部分,第一部分是DOM树,第二部分是遍历DOM.如果你和我一样对于DOM树和遍 ...

最新文章

  1. 使用jQuery的Scrollify插件实现鼠标滚轮或者手势滑动到页面下一节点部分
  2. 高效的判断素数---筛选法
  3. 批量下载ABAP程序和表结构
  4. 用IIS怎样在局域网内建网站
  5. makefile之伪目标(6)
  6. 信息学奥赛一本通C++语言——1052:计算邮资
  7. [GNU LD系列 3.3] 简单的链接脚本例程
  8. 用python画图代码-Python科学画图代码分享
  9. PCL1.8.0 error C4996: 'pcl::SAC_SAMPLE_SIZE'编译错误
  10. 关于英语论文范文参考步骤的详细介绍
  11. ipad服务器的显示器,淘汰下来的iPad能干嘛,几招让其秒变显示器
  12. 芜湖人社×美创科技,人社局数据安全管理制度与数据分类分级建设
  13. 五一应该去哪里自驾游?哪里人最少,哪里不堵车?这份攻略你必须拥有。
  14. 数据结构PTA 基础实验7-2.1 魔法优惠券
  15. 「Python」Mac下pip出现command not found和Could not find a version that satisfies the requirement ...解决方式
  16. intellij idea 创建web 项目
  17. 【分析数据集各类GT数量分布】
  18. 如何改善自己的语言表达能力?
  19. PFMEA分享丨PFD过程流程图的那些事
  20. 利用三轴加速度求解位移的算法—来自飞思卡尔方案

热门文章

  1. macs-fan-control 监视和控制Apple计算机上的风扇
  2. 开机加载很慢怎么优化?
  3. 2020会考计算机成绩查询,初中会考成绩查询2020
  4. 程序员要如何提升自己的外形
  5. 数据结构--二叉树--详解
  6. 分库分表数据库中间件对比
  7. 利用 Create React Native App 快速创建 React Native 应用
  8. Connection refused: connect问题解决方案集合
  9. matlab怎样返回前一步,执行完宏怎样恢复上一步
  10. 东芝移动硬盘:autorun.inf