jQuery-Selectors(选择器)的使用(六、属性篇)
本系列文章主要讲述jQuery框架的选择器(Selectors)使用方法,我将以实例方式进行讲述,以简单,全面为基础,不会涉及很深,我的学习方法:先入门,后进阶!
本系列文章分为:基本篇、层次篇、简单篇、内容篇、可见性篇、属性篇、子元素篇、表单篇、表单对象属性篇共9篇文章。
本篇讲解:[attribute],[attribute=value],[attribute!=value],[attribute^=value],[attribute$=value],[attribute*=value],[selector1][selector2][selectorN]的用法。
您对本系列文章有任何建议或意见请发送到邮箱:sjzlgt@qq.com
由于是第一次写技术性系列文章,难免会出错或代码BUG,欢迎指出,在此谢过!
您可以到
jQuery官网来学习更多的有关jQuery知识。
版权所有:code-cat 博客:http://www.cnblogs.com/bynet/ 转载请保留出处和版权信息!
关于火狐,IE8在浏览此文章时会有一些错误(选择器失灵)现象的声明:
首先,感谢大家对本系列文章的关注及提出的BUG。
我写文章时,用的是IE7的环境,没有考虑到火狐和其它浏览器,这是我的疏忽,在以后的文章中,我会作浏览器测试。经我测试,Radio和CheckBox在火狐浏览器下改变背景色是体现不出来的,在IE8下亦是如此,添加边框也是体现不出来的,如$("input").css("border","red 2px solid");是没有效果的。但jQuery选择器选择的结果是正确的,如果您用$("input").attr("checked","true");这句代码即可测出。
这篇文章我一有时间就会做出修改,找一些火狐、IE等浏览器都支持的效果来作为实例。
1. [attribute]用法
定义:匹配包含给定属性的元素
返回值:Array<Element>
参数:attribute (String) : 属性名
实例:将ID为"div_a1"的DIV中有ID属性的span元素的背景色改为红色
代码: $("#div_a1 span[id]").css("background-color","red"); //点击按钮一将执行这句代码
2. [attribute=value]用法
定义:匹配给定的属性是某个特定值的元素
返回值:Array<Element>
参数:attribute (String):属性名 value (String):属性值。引号在大多数情况下是可选的。但在遇到诸如属性值包含"]"时,用以避免冲突。
实例:将ID为"div_b1"的DIV中name属性值为chk_attribute_test的input元素的背景色改为红色
代码:$("#div_b1 input[name=chk_attribute_test]").css("background-color","red"); //点击按钮二将执行这句代码
3. [attribute!=value]用法
定义:匹配给定的属性是不包含某个特定值的元素
返回值:Array<Element>
参数:attribute (String):属性名 value (String):属性值。引号在大多数情况下是可选的。但在遇到诸如属性值包含"]"时,用以避免冲突。
实例:将ID为"div_c1"的DIV中name属性值不是chk_attribute_test的input元素的背景色改为红色
代码:$("#div_c1 > input[name!=chk_attribute_test]").css("background-color","red"); //点击按钮三将执行这句代码
注意:这里我用了'>',如果将'>'换成' ',则按钮三的背景颜色也会变成红色
4. [attribute^=value]用法
定义:匹配给定的属性是以某些值开始的元素
返回值:Array<Element>
参数:attribute (String):属性名 value (String):属性值。引号在大多数情况下是可选的。但在遇到诸如属性值包含"]"时,用以避免冲突。
实例:将ID为"div_d1"的DIV中name属性值以'txt'开头的input元素的背景色改为红色
代码:$("#div_d1 > input[name^=txt]").css("background-color","red"); //点击按钮四将执行这句代码
5. [attribute$=value]用法
定义:匹配给定的属性是以某些值结尾的元素
返回值:Array<Element>
参数:attribute (String):属性名 value (String):属性值。引号在大多数情况下是可选的。但在遇到诸如属性值包含"]"时,用以避免冲突。
实例:将ID为"div_e1"的DIV中name属性值以'list'结尾的input元素的背景色改为红色
代码:$("#div_e1 > input[name$=list]").css("background-color","red"); //点击按钮五将执行这句代码
6. [attribute*=value]用法
定义:匹配给定的属性是以包含某些值的元素
返回值:Array<Element>
参数:attribute (String):属性名 value (String):属性值。引号在大多数情况下是可选的。但在遇到诸如属性值包含"]"时,用以避免冲突。
实例:将ID为"div_f1"的DIV中name属性值包含'_'的input元素的背景色改为红色
代码:$("#div_f1 > input[name*=_]").css("background-color","red"); //点击按钮六将执行这句代码
7. [selector1][selector2][selectorN]用法
定义:复合属性选择器,需要同时满足多个条件时使用。
返回值:Array<Element>
参数:selector1 (Selector):属性选择器 selector2 (Selector):另一个属性选择器,用以进一步缩小范围 selectorN (Selector):任意多个属性选择器
实例:将ID为"div_g1"的DIV中有id属性且name属性值以'rd'开头和以'test'结尾的input元素的背景色改为红色
代码:$("#div_g1 > input[id][name$=test][name^=rd]").css("background-color","red"); //点击按钮七将执行这句代码
你可以下载这篇文章的HTML源文件:download