HTML5向Web API新引入了 document.querySelector()和document.querySelectorAll()两个方法,都可以接收三种类型的参数:id(#),class(,),标签,就像jquery选择器,参数需要是合法的CSS选择语法。

用起来更方便的从DOM中选取元素,功能类似于jquery的选择器,这样在写原生js代码的时候就方便了许多。

document.querySelector()

返回文档中匹配指定的选择器组的第一个元素(使用深度优先先序遍历文档的节点 | 并且通过文档标记中的第一个元素,并按照子节点数量的顺序迭代顺序节点)。

语法:

element = document.querySelector(selectors);

其中:

1,element是一个element对象(DOM元素)。

2. selectors是一个字符串,包含一个或多个CSS选择器,多个则以逗号分割。

例子:这个例子中,会返回当前文档中第一个类名为‘myclass’的元素:

var el = document.querySelector(".myclass");
Document.querySelectorAll()

返回与指定的选择器组匹配的文档中的元素列表 (使用深度优先的先序遍历文档的节点)。返回的对象是 NodeList 。

语法:

elementList = document.querySelectorAll(selectors);

其中:

1, elementList是一个non-live的NodeList类型的对象;

2,selectors是由一个逗号连接的包含一个或多个CSS选择器的字符串。

如果 selectors参数中包含CSS伪元素,则返回一个空的elementList。

例子:

下面的例子返回一个文档中所有的class为"note"或者 "alert"的div元素.

var matches = document.querySelectorAll("div.note, div.alert");

document.querySelector()和document.querySelectorAll()的更多相关文章

  1. document.querySelector()与document.querySelectorAll()

      document.querySelector()与document.querySelectorAll() CreationTime--2018年7月1日10点49分 Author:Marydon ...

  2. 正确地缩写 document.querySelector

    北京的夕阳,伴随淡淡的霾殇.从写字楼望去,光线是那么昏黄.没有孤雁,也没有霞光,遥想当年,还是 jQuery 独霸一方.那时的我们,写程序都习惯了使用 $,至少在对美元符号的喜爱上,与 PHP 达成了 ...

  3. 实现兼容document.querySelector的方法

    var querySelector = function(selector) { //TODO 先简单兼容,后续继续扩展: var element = null; if(document.queryS ...

  4. document.querySelector和querySelectorAll方法

    querySelector和querySelectorAll是W3C提供的新的查询接口,其主要特点如下: 1.querySelector只返回匹配的第一个元素,如果没有匹配项,返回null.  2.q ...

  5. javascript之 原生document.querySelector和querySelectorAll方法

    querySelector和querySelectorAll是W3C提供的新的查询接口,其主要特点如下: 1.querySelector只返回匹配的第一个元素,如果没有匹配项,返回null.  2.q ...

  6. document.getElementById和document.querySelector的区别

    zepto中的$(".111")出错,jQuery中$(".111")不出错的原因: zepto用document.querySelector实现,jQuery ...

  7. document.getElementById & document.querySelector

    document.getElementById & document.querySelector https://developer.mozilla.org/en-US/docs/Web/AP ...

  8. 关于querySelector 和 document.getElementsByTagName 选中集合问题

    本文解决的问题是 :运用for..of..循环时,edge浏览器报Object doesn't support property or method 'symbol.iterator'问题 以及 符号 ...

  9. document.querySelector获取不到html标签对象实例的原因

    官方给出的HTML中的ID的命名规范: 1.必须以字母 A-Z 或 a-z 开头2.其后的字符:字母(A-Za-z).数字(0-9).连字符("-").下划线("_&qu ...

随机推荐

  1. Hibernate知识点小结(一)--快速入门

    一.Hibernate的简介    1.Hibernate是一个开放源代码的对象关系映射框架    2.对象关系映射:ORM  Object Relation Mapping        对象与数据 ...

  2. 【前行】◇第3站◇ Codeforces Round #512 Div2

    [第3站]Codeforces Round #512 Div2 第三题莫名卡半天……一堆细节没处理,改一个发现还有一个……然后就炸了,罚了一啪啦时间 Rating又掉了……但是没什么,比上一次好多了: ...

  3. EF core 中用lambda表达式和Linq的一些区别

    转眼一看,又过了10几天没有写博客了,主要还是没有什么可以写的,因为遇到的问题都不是很有价值.不过最近发现用lambda表达式,比用Linq的代码量会少一些,而且也方便一些.不过两者都差不多,相差不是 ...

  4. 分布式网上商城项目-dubbo搭建与初次使用错误

    1.Spring-service启动失败 严重: Exception sending context initialized event to listener instance of class o ...

  5. linux系统之-vi编辑器

    在linux系统使用中,掌握熟练的vi编辑器,可以提高linux工作效率.那么vi编辑器的使用方法有哪些呢? vi编辑器可在绝大部分linux发行版中使用. Vi编辑器的作用:创建或修改文件:维护li ...

  6. javascript--setTimeout定时器

    setTimeout()  可以理解为 定时炸弹      ---------------->隔一段事件执行,并且只会执行一次 函数语法: setTimeout(参数1,参数2) 参数1:待执行 ...

  7. git中如何忽略文件上传?

    使用原因:至于我们为什么要使用git忽略文件,原因很多.就比如我自己的情况吧!自己一个人多地方开发,为了代码同步,这样很方便.但是有个问题就是,我创建 的是开源项目,上面有一些服务器上面的配置信息,这 ...

  8. python 中的UDP和TCP(1)

    一.TCP: TCP是Transmission Control Protocol的简称,中文名传输控制协议.是一种面向连接的.可靠的.基于字节流的传输层通信协议.TCP通信需要经过创建连接.数据传输. ...

  9. Python起源与发展

    Python的创始人为吉多*范罗苏姆(Gudio van Rossum) 1.1989年的圣诞节期间,吉多*范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的解释程序,作为ABC语言的一种继承. 2. ...

  10. 一次 group by + order by 性能优化分析

    一次 group by + order by 性能优化分析 最近通过一个日志表做排行的时候发现特别卡,最后问题得到了解决,梳理一些索引和MySQL执行过程的经验,但是最后还是有5个谜题没解开,希望大家 ...