Javascript实例教程:querySelectorAll()方法

querySelectorAll()接受和querySelecort()一样的两个参数,即CSS查询和可选的命名空间解析器,但是返回的是所有匹配的节点而非单个。该方法返回一个叫做StaticNodeList的新类型的实例。

顾名思义,StaticNodeList有NodeList所有的属性和方法,但是它底层的实现是元素集合的一个快照,而非总是要重新的针对文档的动态查询。使用StaticNodeList消除了大部分使用NodeList对象带来的性能问题。

只要调用querySelectorAll()都会返回一个StaticNodeList对象不管匹配的元素有几个;如果没有匹配,那么StaticNodeList为空。querySelectorAll()和querySelector()一样存在与Document和Element类型上。如下是一些例子:

//获取<div>中的所有图像(和getElementsByTaName("img")一样)
var images = document.getElementById("myDiv").querySelectorAll("img");

//获取所有包含“selected”类的元素
var selected = document.querySelectorall(".selected");

//获取所有<p>元素中的<strong>元素
var strongs = document.querySelectorAll("p strong");

返回的StaticNodeList对象可以以NodeList一样的方式迭代,使用item()或者是方括号标记来检索单个元素。如下面的例子:

for (var i = 0, len = strongs.length; i < len; i++) {
    var strong = strong[i]; //或strongs.item(i)
    strong.className = "important";
}

可以如下面的例子所示,在querySelectorAll()中使用一个命名空间解析器:

var svgImages = document.querySelectorAll("svg|svg", function (prefix) {
    switch (prefix) {
        return "http://www.w3.org/2000/svg";
        //此处其它代码
    }
});
时间: 2024-10-26 17:41:37

Javascript实例教程:querySelectorAll()方法的相关文章

菜鸟学习javascript实例教程

菜鸟学习javascript实例教程 1.用JS显示文字的例子: <html><body> <script type="text/javascript">document.write("Hello World!")</script> </body></html> 2.用HTML标签来格式化文本的例子: <html><body> <script type="

javascript实例教程之封装的用法

今天讲讲javascript设计模式中的包装明星——封装,我们会把现实中的一些事物抽象成一个Class并且把事物的属性(名词)作为Class的Property把事物的动作(动词)作为Class的methods.在面向对象的语言中(C#等)都会有一些关键字来修饰类或者属性(Private,public,protect),这些关键词描述了访问的权限,不多做解释. 我们来看看Javascript的易变的特性(我们还用上一次的例子): var Man = function (name, age) { t

js获取IP地址多种方法实例教程

js获取IP地址方法总结 js代码获取IP地址的方法,如何在js中取得客户端的IP地址.原文地址:js获取IP地址的三种方法 http://www.jbxue.com/article/11338.html 1,js取得IP地址的方法一 <script src="http://pv.sohu.com/cityjson?ie=utf-8"></script><script type="text/<A class="infotextke

JavaScript强化教程——jQuery AJAX 实例

什么是 AJAX?AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML).简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据,并在网页上进行显示.使用 AJAX 的应用程序案例:谷歌地图.腾讯微博.优酷视频.人人网等等. jQuery load() 方法 jQuery load() 方法是简单但强大的 AJAX 方法. load() 方法从服务器加载数据,并把返回的数据放入被选元素中. 语法: $(selector).l

php页面get方法实现ajax,入门实例教程

ajax,入门实例教程 本例针对php页面,做了一个小的demo加深对ajax的理解 1.文档结构: 共有ajax.php 和action.php 2个页面. 2.源码如下: /*ajax.php页面*/<!DOCTYPE html> <html lang="en"> <head> <title> ajax</title> <script type="text/javascript"> func

JavaScript强化教程——DOM编程(两种控制div移动的方法)

本文为H5EDU机构官方HTML5培训教程,主要介绍:JavaScript强化教程--DOM编程(两种控制div移动的方法) 第一种 按钮控制首先 创建两个html按钮和一个div并给div一个样式 input type="button" value="左" id="1"> <input type="button" value="右" id="2"> <div i

PHP读取文件多种方法与实例教程

分享下PHP中读取文件的八种方法,收集了很多php读取文件的例子,小而经典,是学习php文件操作的好资料. PHP中读取文件的几个方法,备阅.1.freadstring fread ( int $handle , int $length )fread() 从 handle 指向的文件中读取最多 length 个字节.该函数在读取完最多 length 个字节数,或到达 EOF 的时候,或(对于网络流)当一个包可用时,或(在打开用户空间流之后)已读取了 8192 个字节时就会停止读取文件,视乎先碰到

每天一个JavaScript实例-cookie的使用方法

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>每天一个JavaScript实例-cookie的使用方法</title> <style> div{margin:5px;} </style> <scrip

React 入门实例教程

React 入门实例教程 作者: 阮一峰 日期: 2015年3月31日 现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑. React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设 Instagram 的网站.做出来以后,发现这套东西很好用,就在2013年5月开源了. 由于 React 的