公司新闻

返回 您现在的位置 首页 > 公司新闻

公司新闻

Javascript实例教程:querySelectorAll()方法

时间:2012-04-26 09:00:17    来源:134    点击:134 次

 

只要调用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图像。

 

本文作者来自天津求谛互动,转载请注明出处:求谛互动(http://qd218.com)
选择天津网站建设公司-求谛互动,优质服务,绝对不容错过 !
1. 优秀的网络资源,稳定的网站和速度保证
(配送双线独立ip空间,国际A级BGP机房,99.5% 的主机在线时间)
2. 7年天津网站建设经验,优秀的技术和设计水平,更放心
3. 全程省心服务,不必担心自己不懂网络,更省心。
------------------------------------------------------------------------------------------
我们的与众不同之处:
免费网络营销顾问:我们为您提供免费的网络营销顾问服务,您需要了解关于如何开展网络营销,电子商务,网站设计等的事宜,欢迎随时联系我们。
seo友好的网站管理系统:除了优质的网站空间,网站管理系统,和网站设计外,我们的网站管理系统更是seo友好的,包括:自定义栏目名,Google Sitemap自动生成,静态页面生成等等,让您的网站。
免费网络营销培训:如何更好的投放网络广告,如何提高网络广告的投资回报,如何发帖子,
如何优化网站,我们有丰富的经验开放给您!祝君成功!
联系我们:022-66351726