首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS:有一个带有querySelector或getElementsByTagName的‘实时’列表与非实时querySelectorAll相比有什么用呢?

JS中的querySelector和getElementsByTagName都是用于在DOM中查找元素的方法。

querySelector是一个非实时的方法,它返回匹配指定CSS选择器的第一个元素。它可以接受任何有效的CSS选择器作为参数,并返回匹配的第一个元素。如果没有匹配的元素,则返回null。

getElementsByTagName是一个实时的方法,它返回一个包含指定标签名的所有元素的实时集合。它接受一个标签名作为参数,并返回一个HTMLCollection对象,其中包含所有匹配的元素。如果没有匹配的元素,则返回一个空的HTMLCollection对象。

相比之下,querySelector和getElementsByTagName有以下区别和用途:

  1. 返回结果的类型不同:querySelector返回的是一个元素对象,而getElementsByTagName返回的是一个HTMLCollection对象。
  2. 查询方式不同:querySelector可以使用更复杂的CSS选择器来查询元素,而getElementsByTagName只能通过标签名来查询元素。
  3. 返回结果的数量不同:querySelector只返回匹配的第一个元素,而getElementsByTagName返回所有匹配的元素。
  4. 实时性不同:querySelector是非实时的,即使DOM发生变化,它返回的结果也不会改变。而getElementsByTagName是实时的,它返回的结果会随着DOM的变化而实时更新。

应用场景:

  • 当只需要获取匹配的第一个元素时,可以使用querySelector。
  • 当需要获取所有匹配的元素时,可以使用getElementsByTagName。
  • 当需要使用更复杂的CSS选择器来查询元素时,可以使用querySelector。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云人工智能:https://cloud.tencent.com/product/ai
  • 腾讯云物联网平台(IoT Hub):https://cloud.tencent.com/product/iothub
  • 腾讯云移动推送(TPNS):https://cloud.tencent.com/product/tpns
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

前端温习(二): Javascriput 核心对象 Document 对象

返回文档绝对基础 URI document.body 返回文档body元素 document.cookie 设置返回当前文档有关所有 cookie document.doctype 返回文档相关文档类型声明...() 返回带有指定名称对象集合 document.getElementsByTagName() 返回带有指定标签名对象集合 document.importNode() 把一个节点从另一个文档复制到该文档以便应用...hasFocus() 返回一个布尔值,表示当前文档之中是否元素被激活获得焦点。...// 返回class属性是notealertdiv元素 elementList = document.querySelectorAll(selectors); // 逗号分隔多个CSS选择器,返回所有匹配其中一个选择器元素... querySelector 方法一样,querySelectorAll 方法无法选中 CSS 伪元素。

73020

querySelectorquerySelectorAll

querySelectorAll)及其用法 querySelectorquerySelectorAll基本用法 平常我们在查找节点时总是一个个".getElementById..."...querySelectorquerySelectorAll区别 querySelectorquerySelectorAll他们之间区别就好比getElementById和getElementsByTagName...一样,querySelector返回是单独一个节点,而querySelectorAll返回一个节点集合,换句话说就是querySelectorAll返回一个节点对象数组。...querySelectorAllgetElementsByTagName区别 querySelectorAllgetElementsByTagName最终得到都是一个节点集合,那么他们之间是否只是简化写法这么简单...结束语 了这个工具是不是觉得很方便,以往你可能为了偷懒,连一个小页面都要引入框架去DOM操作,现在你只需要使用这个工具就能省去了不必要引入框架,提升了性能,减少了流量。

1.3K70

JavaScript基础学习--01热身

一、js大致思路: 1、完成静态HTML+CSS 2、过一遍整体大致js思路 3、按照从上到下,从至无顺序完成js编写(包括先写大致轮廓,再细化细节部分) 4、调试代码      二、要点: 1...submit),不必要表单提交 5、js中变量合理利用 6、href="javascript:;" 和 href=""以及href="#"区别:     "#"包含了一个位置信息,默认锚点是#top...var aLi = [ document | obj ].getElementsByTagName('标签名');               (1)获取时候是以数组形式给出,所以即使该元素只有一个...2、动态实时(动态创建元素不会被选中)。3、使用包含选择器时,会包含祖先元素在内。           ...document.querySelector('css selector');     匹配指定 CSS 选择器一个元素     eg. document.querySelector('#div,

83290

【前端性能】必须要掌握原生JS实现JQuery

很多时候,我们经常听见有人说jquery多快多快。在这个各种类库满天飞时候,不得不说是,能有原生JS快吗?...jquery见效较快,属于前期较快后期较慢,没有气支持,成长会越来越慢 网上找代码,好比赵敏找六大门派高手偷绝学,直接对症下药,需要什么拿什么用什么,只注重伤敌(结果),无所谓剑气。...jQuery DOM 操作原生实现   JQuery另一大频繁被使用到功能就是操作DOM元素,诸如插入删除一个元素。...那么你是否觉得使用原生JS实现会很麻烦?其实不然,因为classList。下面是一些关于JQuery css操作JS原生实现。...最后不得不说是 jQuery 的确是一个了不起库。但是如果我们可以同样轻松使用原生 JS 实现 JQuery,何乐而不为

1.3K30

JavaScript(十一)

Selectors API Level 1 核心是两个方法: querySelector() 和 querySelectorAll()。...querySelector() 方法 querySelector() 方法接收一个 CSS 选择符,返回该模式匹配一个元素,如果没有找到匹配元素,返回 null: //取得body元素 var...querySelectorAll() 方法 querySelectorAll() 方法接收参数 querySelector() 方法一样,都是一个 CSS 选择符,但返回是所有匹配元素而不仅仅是一个元素...//取得某中所有元素(类似于getElementsByTagName("em")) var ems = document.getElementById("myDiv").querySelectorAll...getElementsByClassName() 方法 getElementsByClassName() 方法接收一个参数,即一个包含一多个类名字符串,返回带有指定类所有元素 NodeList。

80810

详析获取标签

小编也大家分享了JS逻辑DOM相结合,并带着大家去实现了一些简单页面交互效果,涉及了获取标签—>绑定事件—>操作标签样式。...浏览器支持程度: IE9-(包括IE9)不支持表单元素获取,IE10+、Chrome、Firefox支持表单元素获取;比如:陈能堡 使用querySelector...没错,今天介绍querySelectorquerySelectorAll就是可以直接使用CSS选择器一样写法方法。...代码分析: querySelectorquerySelectorAll他们之间区别就好比getElementById和getElementsByTagName一样,querySelector返回是单独一个标签...,而querySelectorAll返回一个标签集合,换句话说就是querySelectorAll返回结果是以类似数组形式返回(语法数组类似,但不属于数组)。

2K90

HTML5中类jQuery选择器querySelector使用

('.foo,.bar');//返回带有foo或者bar样式类首个元素 querySelectorAll 该方法返回所有满足条件元素,结果是个nodeList集合。...elements = document.querySelectorAll('div.foo');//返回所有带foo类样式div 但需要注意是返回nodeList集合中元素是非实时(no-live...),想要区别什么是实时实时返回结果,请看下例: //首先选取页面中id为container...document.getElementById返回便是实时结果,上面对其添加一个子元素后,再次获取所有子元素个数,已经由原来2个更新为3个(这里不考虑有些浏览器比如Chrome会把空白也解析为一个子节点...所以正确做法是将反斜杠转义后'.foo\\:bar'再传递给querySelector,后者在接收到'.foo\\:bar'这个参数后,字符串将两个反斜杠转义成一个,然后querySelector前面得到一个反斜杠冒号结合进行转义得到正确结果

3.2K70

JS快速入门(二)

--默认值123--> 获取节点方法(直接查找) 方法 说明 getElementById 获取带有指定id节点 getElementsByTagName...() 获取带有指定标签名节点集合 getElementsByClassName() 获取带有指定类名节点集合 querySelector() 获取指定选择器选择器组匹配一个节点 querySelectorAll...') getElementsByTagName()案例 document.getElementsByTagName('p') 这里获取到一个节点集合,节点集合无法直接用于 DOM 操作。...) 创建一个由标签名称 tagName 指定 HTML元素(标签) appendChild(node) 将一个节点插入到指定父节点子节点列表末尾 insertAdjacentHTML(position...当事件属性returnValue 被赋值为空字符串时,会弹出一个对话框,让用户确认是否离开页面。否则,事件被静默处理。

6.5K30

JavaScript 基础

(c=4):(c=3)假设 a = 5, b = 35 > 3为真, 则执行c = 4JavaScript 逻辑运算符&& 逻辑,前后两个条件均为真才会执行| | 逻辑,前后两个条件一个为真就可以...,求当前短路现象,由逻辑和逻辑特性造成特殊现象短路:当条件 1 为假时,条件 2 执行与否不影响总结果,形成短路,称为一假即假短路:当条件 1 为真时,条件 2 执行与否不影响总结果...('div1'); //获取 id 为div1 元素getElementsByTagName()方法,将返回一个对象数组这个数组保存着所有相同元素名节点列表document.getElementsByTagName...div1 元素document.querySelector('.div1'); //获取 class 为 div1 一个元素querySelectorAll() 方法,通过元素 css...选择器查找元素,筛选全部,将返回一个对象数组这个数组保存着所有符合选择器节点列表,document.querySelectorAll('li'); //获取所有 li 元素,返回数组document.querySelectorAll

1.2K50

webapi(一)初识DOM&定时器

初识 作用 使用js去操作html和浏览器 分类 DOM:文档对象模型 BOM:浏览器对象模型 DOM(文档对象模型) 用来呈现 ,以及任意 HTML XML文档交互 作用: 实现网页特效 实现用户交互...DOM树 含义: 将HTML文档以树状结构直观地表现出来 作用: 直观地体现了标签标签之间关系 DOM对象 含义: 浏览器根据html标签生成JS对象 核心思想: 把网页内容当作对象来处理...作用:返回对象集合NodeList document.querySelectorAll('li') 注意: querySelector()方法获取到元素可以直接修改,因为只有一个元素 querySelectorAll...} 伪数组 querySelectorAll() 方法获取到元素是伪数组,length,索引号等。...语法: // 获取到当前DOM元素他一个集合列表 元素.classList // 添加一个类 元素.classList.add('类名') // 删除一个类 元素.classList.remove

50420

JS魔法堂:那些困扰你DOM集合类型

DOM集合又何止这些,下面我们就一起来探讨一下吧! 二、困扰你我NodeListHTMLCollection               相同点:     1. 类数组。...length属性,可以用下标索引来访问其中元素,但没有Arrayslice等方法;     2. 只读。无法增删其中元素;     3. 实时同步DOM树变化。...// 各浏览器均抛SyntaxError异常 nodes = document.querySelectorAll('') document.querySelectorAll(字符串类型入参);...其特征NodeList基本无异,唯一区别就是StaticNodeList是不会实时同步DOM树变化,因此在polyfill querySelectorAll时候就不用考虑实时同步DOM树变化问题了...另外,JQuery中也有一个data函数,那么它跟以"data-"开头自定义特性什么关联

2K90

Web APIs第一天

什么是DOM DOM(Document Object Model——文档对象模型)是用来呈现以及任意 HTML XML文档交互API 白话文:DOM是浏览器提供一套专门用来 操作网页内容 功能...DOM树 将 HTML 文档以树状结构直观表现出来,我们称之为文档树 DOM 树 描述网页内容关系名词 作用:文档树直观体现了标签标签之间关系 4....树 作用:文档树直观体现了标签标签之间关系 浏览器根据html标签生成 JS对象(DOM对象) DOM核心就是把内容当对象来处理 是 DOM 里提供一个对象 网页所有内容都在document...根据CSS选择器来获取DOM元素 (重点) 选择匹配一个元素 包含一个多个有效CSS选择器 字符串 CSS选择器匹配一个元素,一个 HTMLElement对象。...let num = document.querySelector('.box li:last-child') console.log(num) 选择匹配多个元素 包含一个多个有效CSS选择器 字符串

1.7K30

DOM&BOM

元素) 格式:document.getElementById("id值") 特点:一次只能获取一个对象 Java,从入门到入土!...查询选择器 格式:document.querySelector("选择器") 获取单个标签对象 querySelectorAllquerySelector用法一样,querySelectorAll...}) diva[index].className = 'current'; } }) BOM BOM提供了一系列浏览器窗口进行交互对象...alert(“消息”) BOM没有通用标准,所以在各个浏览器上显示效果不一样 window.confirm("消息") \ confirm("消息"):弹出带有确定和取消按钮消息框 window.prompt...("提示信息") \ prompt("提示信息"):弹出带有提示消息输入框 onload 事件(页面加载) 浏览器是从上向下解析html文档代码,所以之前要求script标签写在body标签最下面

1.1K20

通过css类选择器选取元素 文档结构和遍历 元素树文档

) 尽管如此,js还定义了一个方法,即一个getElementsByClassName(),是基于class属性值中标识符来选取成组文档元素 还有一个类似的getElementsByTagName(...定义了一些选择api用来通过js来选择元素 document.querySelector("title") 选择title元素 document.querySelectorAll("title") 会返回一个类数组...节点列表 document.querySelector(":first-line") 选择一个伪元素,在css中匹配了节点一部分,而不是实际元素。...其中querySelector只会返回匹配一个结果,querySelectorAll将会返回全部结果,返回一个类数组。...document.querySelector(":link") 返回一个页面上未访问连接 document.querySelectorAll(":visited") 选择一个已经访问过,用来获取用户在该页面的一部分历史记录

2K20

JavaScript笔记(11)之Web APIs阶段 获取元素

我们之前学,都是JS基础部分,也就是ECMA规定语法,后面我们就要学习BOM和DOM了....API (Application Programming Interface)应用程序接口,是一些预先定义函数,目的是提供应用程序开发人员基于某软件硬件得以访问一组例程能力,而又无需访问源码...根据 getElementsByTagName( ) 方法可以返回带有指定标签名对象集合....得到元素是动态 如果页面中只有一个li,返回还是伪数组形式 如果页面中没有这个元素返回是空伪数组. 假如我们现在有ul,也有ol,但是我们只想要ol里面的li标签,那该怎么办?...根据HTML5获取 document.getElementsByClassName('类名') : 根据类名返回元素对象合集 上面的方法都有些繁琐了,现在有一个更新方法, document.querySelector

34910
领券