建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

Javascript实例教程:querySelectorAll()方法

时间:2012-04-26 19:59来源: 作者: 点击:
只要调用querySelectorAll()都会返回一个StaticNodeList对象不管匹配的元素有几个;如果没有匹配,那么StaticNodeList为空。querySelectorAll()和querySelector()一样存在与Document和Element类型上。 querySelectorAll()接受和querySelecort()一样的两个参数,即CSS查询和
只要调用querySelectorAll()都会返回一个StaticNodeList对象不管匹配的元素有几个;如果没有匹配,那么StaticNodeList为空。querySelectorAll()和querySelector()一样存在与Document和Element类型上。

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";
        //此处其它代码
    }
});

这段例子检索了文档中的所有使用<svg:svg>定义的SVG图像。
(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片