本文介绍jQuery选择器
$('#id').siblings() 当前元素所有的兄弟节点
$('#id').prev() 当前元素前一个兄弟节点
$('#id').next() 当前元素之后第一个兄弟节点
$('#id').nextAll() 当前元素之后所有的兄弟节点
$('#id').prevAll() 当前元素之前所有的兄弟节点
$('#id').nextAll() 当前元素之后所有的兄弟节点
$('#id').prev() 当前元素前一个兄弟节点
$('#id').next() 当前元素之后第一个兄弟节点
$('#id').nextAll() 当前元素之后所有的兄弟节点
$('#id').prevAll() 当前元素之前所有的兄弟节点
$('#id').nextAll() 当前元素之后所有的兄弟节点
选择器 | 返回值 | 匹配元素 | jQuery代码 |
#id |
Array<Element> | $("#myDiv") | |
* |
Array<Element(s)> | $("*") | |
.class |
Array<Element(s)> | $(".myClass") | |
:animated |
Array<Element(s)> | 匹配所有正在执行动画效果的元素 |
$("#run").click(function(){
$("div:not(:animated)").
animate({ left: "+=20" }, 1000);
});
|
:button |
Array<Element(s)> | $(":button") | |
:checkbox |
Array<Element(s)> | $(":checkbox") | |
:checked |
Array<Element(s)> | 匹配所有被选中元素(复选框、 单选框等,不包括select中的option) | $("input:checked") |
:contains |
Array<Element(s)> | 匹配包含给定文本的元素 |
$("div:contains('John')") |
:disabled |
Array<Element(s)> | 匹配所有不可用元素 | $("input:disabled") |
:empty |
Array<Element(s)> | 匹配所有不包含子元素或者文本为空的元素 |
$("td:empty") |
:enabled |
Array<Element(s)> | 匹配所有可用元素 | $("input:enabled") |
:eq |
Array<Element(s)> | 匹配一个给定索引值的元素,从 0 开始计数 | $("tr:eq(1)") |
:even |
Array<Element(s)> | 匹配所有索引值为偶数的元素,从 0 开始计数 | $("tr:even") |
:file |
Array<Element(s)> | 匹配所有文件域 | $(":file") |
first() |
jQuery | 获取第一个元素 | $('li').first() |
:first-child |
Array<Element(s)> |
匹配第一个子元素
':first' 只匹配一个元素,而此选择符将为
每个父元素匹配一个子元素
| $("ul li:first-child") |
:gt |
Array<Element(s)> | 匹配所有大于给定索引值的元素,从 0 开始计数 | $("tr:gt(0)") |
:has |
Array<Element(s)> | 匹配含有选择器所匹配的元素的元素 | $("div:has(p)").addClass("test"); |
:header |
Array<Element(s)> | 匹配如 h1, h2, h3之类的标题元素 | $(":header").css("background", "#EEE"); |
:hidden |
Array<Element(s)> | 匹配所有不可见元素,或者type为hidden的元素 | $("tr:hidden") $("input:hidden") |
:image |
Array<Element(s)> | 匹配所有图像域 | $(":image") |
:input |
Array<Element(s)> | 匹配所有 input, textarea, select 和 button 元素 | $(":input") |
last()
|
jQuery | 获取最后一个元素 | $('li').last() |
:lt
|
Array<Element(s)> | 匹配所有小于给定索引值的元素 | $("tr:lt(2)") |
:not |
Array<Element(s)> | 去除所有与给定选择器匹配的元素在jQuery 1.3中,已经支持复杂选择器了(例如:not(div a) 和 :not(div,a)) | $("input:not(:checked)") |
:nth-child |
Array<Element(s)> | 匹配其父元素下的第N个子或奇偶元素':eq(index)' 只匹配一个元素,而这个将为每一个父元素匹配子元素。:nth-child从1开始的,而:eq()是从0算起的!可以使用:nth-child(even):nth-child(odd):nth-child(3n):nth-child(2):nth-child(3n+1):nth-child(3n+2) | $("ul li:nth-child(2)") |
:odd |
Array<Element(s)> | 匹配所有索引值为奇数的元素,从 0 开始计数 | $("tr:odd") |
:only-child |
Array<Element(s)> | 如果某个元素是父元素中唯一的子元素,那将会被匹配如果父元素中含有其他元素,那将不会被匹配。
在 ul 中查找是唯一子元素的 li | $("ul li:only-child") |
:parent |
Array<Element(s)> | 匹配含有子元素或者有文本的元素查找所有含有子元素或者含有文本的 td 元素 | $("td:parent") |
:password |
Array<Element(s)> | 匹配所有密码框 | $(":password") |
:radio |
Array<Element(s)> | 匹配所有单选按钮 | $(":radio") |
:reset |
Array<Element(s)> | 匹配所有重置按钮 | $(":reset") |
:selected |
Array<Element(s)> | 匹配所有选中的option元素 | $("select option:selected") |
:submit |
Array<Element(s)> | 匹配所有提交按钮 | $(":submit") |
:text |
Array<Element(s)> | 匹配所有的单行文本框 | $(":text") |
:visible |
Array<Element(s)> | 匹配所有的可见元素 | $("tr:visible") |
[attribute!=value]
|
Array<Element(s)> |
匹配所有不含有指定的属性,或者属性不等于特定值的元素。 此选择器等价于:not([attr=value]) | $("input[name!='newsletter']").attr("checked", true); |
[attribute$=value]
|
Array<Element(s)> | 匹配给定的属性是以某些值结尾的元素 | <input name="newsletter" /> $("input[name$='letter']") |
[attribute*=value]
|
Array<Element(s)> | 匹配给定的属性是以包含某些值的元素 | <input name="letterman2" /> $("input[name*='man']") |
[attribute^=value]
|
Array<Element(s)> | 匹配给定的属性是以某些值开始的元素 | <input name="newsletter" /> $("input[name^='news']") |
[attribute=value]
|
Array<Element(s)> | 匹配给定的属性是某个特定值的元素 | <input type="checkbox" name="newsletter" /> $("input[name='newsletter']").attr("checked", true); |
[attribute]
|
Array<Element(s)> | 匹配包含给定属性的元素。注意,在jQuery 1.3中,前导的@符号已经被废除!如果想要兼容最新版本,只需要简单去掉@符号即可。 | $("div[id]") |
[selector1][selector2][selectorN]
|
Array<Element(s)> | 复合属性选择器,需要同时满足多个条件时使用。 | 找到所有含有 id 属性,并且它的 name 属性是以 man 结尾的 $("input[id][name$='man']") |