jQuery之二(选择器)

1. CSS选择器(添加样式)

标签选择器E{}、ID选择器#ID{}、类名选择器E.className{}、群组选择器E1,E2{}、后代选择器E F{}、通配符选择器*{}(对文档中所有元素)、子选择器E>F{}、临近选择器E+F{}、属性选择器E[attr]{}。

2. jQuery选择器(添加行为)

1)基础选择器:$("#ID")、$(".className")、$("#E")、$("*")、$("E1,E2")

注意:当要用jQuery检查某元素是否存在时不能用if($("#tt"))而应该是if($("#tt").length>0)。

2)层次选择器:选取E的所有F子孙元素$("E F")、选取E的所有F子元素$("E>F")、选取紧邻在E后面的那个F元素$("E+F")(等价方法:$("E").next("F"))、选取E后面的所有跟F同辈的元素$("E~F")(等价方法:$("E").nextAll("F"))

注意:$("E").siblings("F")方法选取E中所有跟F同辈的元素,无论前后位置。

3)过滤选择器

a.基本过滤

$("div:first")选取所有div元素中的第一个div元素、$("div:last")、:not(selector)、:even偶数、:odd、:eq(index)选取索引等于index的、:gt(index)、:lt(index)、:header选取所有标题元素、:animated选取当前正在执行动画的所有元素、:focus选取当前获取焦点的元素

b.内容过滤

$("div:contains(‘我‘)")选取含有文本“我”的div元素、:empty不包含子元素或文本、:has(selector)选取含有selector元素的元素、:parent含有子元素或文本

如$("div:has(‘.mini‘)").css("background","#bbffaa");改变含有class为mini的div元素的背景色。

c.可见性过滤

:hidden不可见、:visible可见 如$("div:hidden").show(3000);显示隐藏的div元素3000ms

d.属性过滤

[attr]由此属性的,[attr=value][attr!=value], [attr^=value]属性值以value开始, [attr$=value]属性值以value结束, [attr*=value]属性含有value, [attr|=value]属性等于给定字符串或以该字符串为前缀, [attr~=value]属性用空格分隔的值中包含value, [attr1][attr2]..复合以上属性选择器

e.子元素过滤(为每个父元素匹配)

:nth-child(index)选择index从1开始的第index个元, :first-child, :last-child; :only-child

f.表单对象属性过滤

:enable所有可用, :disable, :checked单选框或复选框中被选中的, :selected下拉框中被选中的

3)表单选择器

:input包括<input><textarea><select><button>、 :text单行文本框、 :password密码框、:radio、 :checkbox 、:submit、 :image、 :reset 重置按钮、:button、 :file上传域、 :hidden不可见元素

3. 注意事项

1)属性值含特殊字符. # [ )等,应在特殊字符前面加 \\ 转义字符。

2)选择器中是否含有空格的区别:$(‘.test:hidden‘)选取隐藏的class为test的元素。$(‘.test :hidden‘)选取class为test的元素里面的隐藏元素。

3)方法addClass(className)与removeClass(className) 为元素添加/移除指定类。

4)if($cate.is(":visible")){...} //若jQuery对象cate显示 ...

 

 

 

 

 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。