美文网首页
关于HTML5的各种选择器

关于HTML5的各种选择器

作者: SevenLonely | 来源:发表于2017-09-16 13:11 被阅读0次

简介


HTML5向Web API新引入了document.querySelector以及document.querySelectorAll两个方法用来更方便地从DOM选取元素,功能类似于jQuery的选择器。这使得在编写原生JavaScript代码时方便了许多。

用法


两个方法使用差不多的语法,都是接收一个字符串参数,这个参数需要是合法的CSS选择语法。


element = document.querySelector('selectors');
elementList = document.querySelectorAll('selectors');

其中参数selectors 可以包含多个CSS选择器,用逗号隔开。


element = document.querySelector('selector1,selector2,...');
elementList = document.querySelectorAll('selector1,selector2,...');

使用这两个方法无法查找带伪类状态的元素,比如querySelector(':hover')不会得到预期结果。

querySelector

该方法返回满足条件的单个元素。按照深度优先和先序遍历的原则使用参数提供的CSS选择器在DOM进行查找,返回第一个满足条件的元素


element = document.querySelector('div#container');//返回id为container的首个div
element = document.querySelector('.foo,.bar');//返回带有foo或者bar样式类的首个元素

querySelectorAll

该方法返回所有满足条件的元素,结果是个nodeList集合。查找规则与前面所述一样。


elements = document.querySelectorAll('div.foo');//返回所有带foo类样式的div

但需要注意的是返回的nodeList集合中的元素是非实时(no-live)的,想要区别什么是实时非实时的返回结果,请看下例:


<div id="container">
    <div></div>
    <div></div>
</div>


//首先选取页面中id为container的元素
container=document.getElementById('#container');
console.log(container.childNodes.length)//结果为2


//然后通过代码为其添加一个子元素
container.appendChild(document.createElement('div'));


//这个元素不但添加到页面了,这里的变量container也自动更新了
console.log(container.childNodes.length)//结果为3

通过上面的例子就很好地理解了什么是会实时更新的元素。document.getElementById返回的便是实时结果,上面对其添加一个子元素后,再次获取所有子元素个数,已经由原来的2个更新为3个(这里不考虑有些浏览器比如Chrome会把空白也解析为一个子节点)。

相关文章

  • HTML5选择器

    @(HTML5)[HTML5选择器] [TOC] 二、HTML5选择器 CSS选择器回顾 ID选择器 类名选择器:...

  • 关于HTML5的各种选择器

    简介 HTML5向Web API新引入了document.querySelector以及document.quer...

  • html5选择器

    html5选择器 属性选择器 层级选择器 伪选择器 属性选择器 属性选择器和标签选择器、id选择器、类选择器一样,...

  • CSS 选择器

    选择器决定了样式规则适用于哪些元素。 html5有以下常见的选择器: 一、基本选择器: 1. 元素选择器 格式:标...

  • 项目中常用的JS代码

    HTML5 DOM 选择器 HTML5全屏 获取键盘Code码 阻止默认行为 阻止冒泡 鼠标滚轮事件 jQuery...

  • 无线web开发经验(4)—— Javascript

    DOM选择器 html5为了我们提供了一个非常好的DOM选择器,就是document.querySelector和...

  • Html5的新语义化的标签

    在HTML5之前采用HTML+CSS文档结构写法 【ID选择器说明 id选择器——用于标识页面上特定元素(比如站点...

  • 分享一些前端开发中最常用的JS代码片段~ 干货~

    HTML5 DOM 选择器 javascript 代码 阻止默认行为 javascript 代码 阻止冒泡 jav...

  • 2017.11.04CSS3

    HTML5/CSS3 HTML5是HTML的升级、CSS3是CSS的升级 选择器 自定义属性 class操作 比c...

  • querySelector

    html5新增的一个选择器document.querySelector() //返回找到的首个元素 documen...

网友评论

      本文标题:关于HTML5的各种选择器

      本文链接:https://www.haomeiwen.com/subject/qwbysxtx.html