
Document 对象
获取文档中 class="example" 的所有元素:
var x = document.querySelectorAll(".example");
querySelectorAll() 方法返回文档中匹配指定 CSS 选择器的所有元素,返回 NodeList 对象。
NodeList 对象表示节点的集合。可以通过索引访问,索引值从 0 开始。
提示: 你可以使用 NodeList 对象的
length 属性来获取匹配选择器的元素属性,然后你可以遍历所有元素,从而获取你想要的信息。
更多 CSS 选择器可以参考
CSS 选择器教程 ,
CSS 选择器参考手册。
表格中的数字表示支持该方法的第一个浏览器的版本号。
方法
querySelectorAll()
4.0
8.0
3.5
3.2
10.0
注意: Internet Explorer 8 支持 CSS2 选择器。
IE9 及更高版本的浏览器已经支持 CSS3 选择器。
elementList 是一个静态的 NodeList 类型的对象。
selectors 是一个由逗号连接的包含一个或多个 CSS 选择器的字符串。
参数
类型
描述
CSS 选择器
String
必须。 指定一个或多个匹配 CSS 选择器的元素。可以通过 id, class, 类型, 属性, 属性值等作为选择器来获取元素。
多个选择器使用逗号(,)分隔。
提示: CSS 选择器更多内容可以参考
DOM 版本:
Level 1 Document Object
返回值:
一个 NodeList 对象,表示文档中匹配指定 CSS 选择器的所有元素。 NodeList 是一个静态的 NodeList 类型的对象。如果指定的选择器不合法,则抛出一个 SYNTAX_ERR 异常。
获取文档中所有的 <p> 元素, 并为匹配的第一个 <p> 元素 (索引为 0) 设置背景颜色:
// 获取文档中所有的 <p> 元素
var x = document.querySelectorAll("p");
// 设置第一个 <p> 元素的背景颜色
x[0].style.backgroundColor = "red";
获取文档中所有 class="example" 的 <p> 元素, 并为匹配的第一个 <p> 元素 (索引为 0) 设置背景颜色:
// 获取文档中所有 class="example" 的 <p> 元素
var x = document.querySelectorAll("p.example");
// 设置 class="example" 的第一个 <p> 元素的背景颜色
计算文档中 class="example" 的 <p> 元素的数量(使用 NodeList 对象的 length 属性):
var x = document.querySelectorAll(".example").length;
设置文档中所有 class="example" 元素的背景颜色:
var i;
for (i = 0; i < x.length; i++) {
x[i].style.backgroundColor = "red";
}
设置文档中所有 <p> 元素的背景颜色:
查找文档中共包含 "target" 属性的 <a> 标签,并为其设置边框:
var x = document.querySelectorAll("a[target]");
x[i].style.border = "10px solid red";
查找每个父元素为 <div> 的 <p> 元素,并为其设置背景颜色:
var x = document.querySelectorAll("div > p");
给文档中所有的 <h2>, <div> 和 <span> 元素设置背景颜色:
var x = document.querySelectorAll("h2, div, span");
CSS 教程: CSS 选择器
CSS 参考手册: CSS 选择器参考手册
JavaScript 教程: JavaScript HTML DOM 节点列表
HTML DOM 参考手册: document.querySelector()
HTML DOM 参考手册: element.querySelectorAll()
