选择器总结:
核心选择器(应用最广泛的选择器)
* |
选择所有元素 |
元素 |
选择特定类型的元素 |
.类名 |
选择具有特定class的元素 |
元素.类名 |
选择具有特定class的某类元素 |
#id |
选择具有特定id属性值的元素 |
属性选择器(根据元素的属性来选择元素)
[attr] |
选取定义了attr属性的元素,即使这个属性没有值 |
[attr="val"] |
选取attr属性值等于字符串val的元素 |
[attr^="val"] |
选取attr值以val开头的元素 |
[attr$="val"] |
选取attr值以val结尾的元素 |
[attr*="val"] |
选取attr值包含val的元素 |
[attr~="val"] |
选取attr属性其中一个值是字符串val的元素 |
[attr|="val"] |
选取attr属性等于字符串val,或属性值为连字符分割的值列表且第一个值为val的元素,如attr="val-aaa-bbb" |
[selector1][selector2][selector3]... |
复合属性选择器,需要同时满足多个条件使用,属性选择器可以配合其他选择器使用 |
关系选择器
<selector1> <selector2> |
在给定的祖先元素下匹配所有的后代元素 |
<selector1>><selector2> |
在给定的父元素下匹配所有的子元素 |
<selector1>+<selector2> |
匹配所有紧接在<selector1>元素右面的<selector2> |
<selector1>~<selector2> |
匹配<selector1>元素的所有同辈<selector2>元素 |
伪元素和伪类选择器
:checked |
用于表单,匹配所有被选中元素(单选、复选框等,不包括select元素的option元素) |
:disabled |
用于表单,匹配所有不可用元素 |
:enabled |
用于表单,匹配所有可用元素 |
:focus |
主要用于表单,选取得到焦点的元素 |
:required |
用于表单,选取具有required属性的元素 |
:optional |
用于表单,选取缺少required属性的元素 |
:empty |
匹配所有既不包含子元素也不包含文本的空元素 |
:first-child |
选取第一个子元素 |
:last-child |
选取最后一个子元素 |
:nth-child(n) |
选取元素的第n个子元素(从1开始),n可为even或odd |
:nth-last-child(n) |
选取元素的倒数第n个子元素 |
:nth-of-type(n) |
选取同属于一个父元素之下,并且标签名相同的元素中的第n个 |
:nth-last-of-type(n) |
选取同属于一个父元素之下,并且标签名相同的元素中的倒数第n个 |
:only-child |
如果某个元素是父元素中唯一的子元素,将会被匹配 |
:only-of-type |
选择所有没有兄弟元素的元素 |
:root |
选取文档的根元素,在html文档中即是<html>元素 |
联合选择器和反选择器
<selector1>,<selector2>,<selector3>…… |
匹配各个选择器的交集元素 |
:not(selector) |
匹配不符合选择器要求的元素 |
jQuery扩充的选择器
:animated |
匹配所有正在执行动画效果的元素 |
:contains(text) |
如果元素内或者后代元素内包含指定的文本即被选中 |
:eq(n) |
选择第n个元素(从0开始计数) |
:first |
选择第一个匹配的元素 |
:last |
选择最后一个匹配的元素 |
:lt(n) |
选择序号小于n的所有元素(从0开始计数) |
:gt(n) |
选择序号大于n的所有元素(从0开始计数) |
:odd |
选择所有奇数元素(从0开始计数) |
:even |
选择所有的偶数元素(从0开始计数) |
:has(选择器) |
匹配包含 选择器所匹配的元素的元素 |
:text |
用于表单,匹配所有的单行文本框 |
:button |
匹配所有按钮(input标签type为button以及<button>标签) |
:checkbox |
用于表单,选择所有的复选框(匹配所有复选框) |
:file |
用于表单,选择所有的文件上传输入框 |
:input |
用于表单,选择所有的input元素(匹配所有 input, textarea, select 和 button 元素) |
:password |
用于表单,选择所有的密码输入框 |
:radio |
用于表单,选择所有的单选框 |
:submit |
用于表单,选择所有的表单提交按钮 |
:image |
用于表单,匹配所有图像域 |
:reset |
用于表单,选择所有的表单重置按钮 |
:selected |
用于表单,匹配所有选中的option元素 |
:header |
匹配如 h1, h2, h3之类的标题元素 |
:hidden |
选择所有的被隐藏文件 |
:visible |
选择所有的可见元素 |
:parent |
匹配含有子元素或者文本的元素 |
限制搜索的范围
表达式 |
例子 |
说明 |
备注 |
$(选择器,$(选择器)) |
var $divs=$('#div1');alert($('p',$divs).length);
|
id为div1的元素及其后代元素范围中p元素的个数 |
|
God, Grant me the SERENITY, to accept the things I cannot change,
COURAGE to change the things I can, and the WISDOM to know the difference.