Javascript实例教程:querySelector()方法接受一个CSS查询并返回匹配模式的第一个子孙元素,如果没有匹配的元素则返回null。
2013-06-20 08:50
871 查看
文章简介:querySelector()方法接受一个CSS查询并返回匹配模式的第一个子孙元素,如果没有匹配的元素则返回null。 |
//获取body元素 var body = document.querySelector("body"); //获取ID为myDiv的元素 var myDiv = document.querySelecotr("#myDiv"); //获取第一个包含类selected的元素 var selected = document.querySelector(".selected"); //获取第一个包含类button的图像元素 var img = document.body.querySelector("img.button");
当querySelector()方法应用Document类型上时,它会尝试从文档元素开始匹配模式。如果应用与Element类型,查询则只会尝试从该元素的子孙节点中寻找匹配。
CSS查询可以根据需要复杂化或简单化。如果查询中有语法错误或者有不支持选择器,那么querySelector()或抛出一个错误。
querySelector()方法还接受可选的第二个参数,它是一个命名空间解析器,就是一个接受一个命名空间前缀并返回其相关URI的函数,类似于:
var nsresolver = function (prefix) { switch (prefix) { case "w3cmm": return "http://www.w3cmm.com"; //此处其它代码 } };
命名空间解析器对于在嵌入了其它语言诸如SVG或MathML的XHTML文档中执行查询非常有用,XML文档亦如此。CSS查询中的命名空间是使用一个管道来指定的,如下:
var svgImage = document.querySelector("svgsvg", function (prefix) { switch (prefix) { case :"svg": return "http://www.w3.rog/2000/svg"; } });
这个例子通过在文档中查找定义为<svg:svg>的元素返回了第一个SVG图像。当在查询中遇到了svg命名空间前缀时,则调用命名空间解析器函数来确定URI。没有命名空间解析器,则会抛出一个错误,因为查询引擎无法辨识svg命名空间前缀。
相关文章推荐
- 3.定义一个接受两个数字的方法,返回两个数字的和 →(javascript代返回值的函数的申明和调用)
- 判断一个单链表是否有环。如果有,把指向环开始的指针返回;如果没有,返回NULL。
- indexOf 方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串,则返回 -1
- JavaScript使用push方法添加一个元素到数组末尾用法实例
- js写一个方法,求一个数组中的最大奇数和最小偶数,并求他们的和,如果一个数不存在则返回null。
- .is() 检查当前的配套与选择器,jQuery对象的元素,或返回TRUE如果在这些元素的至少一个匹配给定的参数。
- JavaScript数组对象实现增加一个返回随机元素的方法
- JavaScript数组对象实现增加一个返回随机元素的方法
- 【c语言】模拟实现strchr函数,功能:在一个字符串中查找一个字符第一次出现的位置,如果没有出现返回NULL
- 编写一个函数 char *strfind(char *s, char *t),用于查找字符串t在字符串s中最右边出现的位置,如果没有找到则返回NULL.
- 判断集合元素之间只要存在一个null值就返回但第一个元素不能为null
- 全国计算机等级二级C++第四章习题编程题6 :编写一个函数 char *strfind(char *s, char *t),用于查找字符串t在字符串s中最右边出现的位置,如果没有找到则返回NULL.
- [置顶] 在字符串中查找一个特定的字符第一次出现的位置,并返回字符所在位置;如果没有则返回NULL。
- jQuery find() 搜索所有段落中的后代 C# find() 第一个匹配元素 Func 有返回值 Action是没有返回值 Predicate 只有一个参数且返回值为bool 表达式树Expression
- 3.一个斐波那契数列是由数字1、1、2、3、5、8、13、21、34等等组成的,其中每一个数字(从第三个数字起)都是前两个数字的和。创建一个方法,接受一个整数参数,并显示从第一个元素开始总共由该参数
- JavaScript使用shift方法移除素组第一个元素实例分析
- EF Core使用SQL调用返回其他类型的查询 ASP.NET Core 2.0 使用NLog实现日志记录 CSS 3D transforms cSharp:use Activator.CreateInstance with an Interface? SqlHelper DBHelper C# Thread.Abort方法真的让线程停止了吗? 注意!你的Thread.Abort方法真
- 巧妙使用CSS媒体查询(Media Queries)和JavaScript判断浏览器设备类型的好方法
- 设计一个栈,出pop与push方法,还支持 min方法,可返回栈元素中的最小值
- WEB标准教程第9天:第一个CSS布局实例