$('p') :元素选择器,使用 CSS 选择器来选取 HTML 元素。css
$(".test") :.class 选择器 能够经过指定的 class 查找元素。html
$("#test") :#id 选择器经过 HTML 元素的 id 属性选取指定的元素。jquery
$("[href]") :属性选择器,选取全部带有 href 属性的元素。好比$("[href='#']") 选取全部带有 href 值等于 "#" 的元素。$("[href!='#']") 选取全部带有 href 值不等于 "#" 的元素。$("[href$='.jpg']")选取全部 href 值以 ".jpg" 结尾的元素。css3
语法 | 描述 |
---|---|
$("*") | 选取全部元素 |
$(this) | 选取当前 HTML 元素 |
$("p.intro") | 选取 class 为 intro 的 <p> 元素 |
$("p:first") | 选取第一个 <p> 元素 |
$("ul li:first") | 选取第一个 <ul> 元素的第一个 <li> 元素 |
$("ul li:first-child") | 选取每一个 <ul> 元素的第一个 <li> 元素 |
$("[href]") | 选取带有 href 属性的元素 |
$("a[target='_blank']") | 选取全部 target 属性值等于 "_blank" 的 <a> 元素 |
$("a[target!='_blank']") | 选取全部 target 属性值不等于 "_blank" 的 <a> 元素 |
$(":button") | 选取全部 type="button" 的 <input> 元素 和 <button> 元素 |
$("tr:even") | 选取偶数位置的 <tr> 元素 |
$("tr:odd") | 选取奇数位置的 <tr> 元素 |
选择器 | 说明 |
*、E、E F、E。C、E#I等CSS1选择器 | 通配符、标记选择器,后代选择器,交集选择器,ID选择器等CSS1中的选择器 |
E>F | 子选择器,只选中第一代 |
E+F | 全部名称为F的标记,而且该标记紧接着前面的E标记,下一个兄弟元素 |
E~F | 全部名称为F的标记,若是F和E是兄弟关系,而且F位于E后面(不须要紧跟E) |
E:has(F) | 全部名称为E的标记,而且该标记包含F标记 |
E[A] | 全部名称为E的标记,而且具备属性A |
E[A=V] | 全部名称为E的标记,而且属性A的值等于V |
E[A^=V] | 全部名称为E的标记,而且属性A的值以V开头 |
E[A$=V] | 全部名称为E的标记,而且属性A的值以V结尾 |
E[A*=V] | 全部名称为E的标记,而且属性A的值包含V |
经过DOM元素之间的层次关系来获取特定元素,例如后代元素,子元素,相邻元素和同辈元素等。动画
$("ancestor descendant"):选取ancestor元素里的全部descendant元素。this
例:$("div span")选取<div>里的全部的<span>元素。spa
$("parent>child")选取parent元素下的child元素,与$("ancestor descendant")的区别是$("ancestor descendant")选取的是后代元素。htm
例:$("div >span")选取<div>下元素名是<span>的子元素。blog
$("prev+next")选取紧接在prev元素后面的next元素。图片
例:$(".one+div")选取class为one的下一个<div>同辈元素。
$("prev~siblings")选取prev元素以后的全部siblings元素。
例:$("#two~div")选取id为two的元素后面全部<div>同辈元素。
注意:
jquery中next()来代替$("prev+next")选择器。
jquery中nextAll()来代替$("prev~siblings")选择器。
$("prev~siblings")和jquery中siblings()的区别:
$("prev~siblings")只能选中"prev"后面的同辈<div>元素。
siblings()与先后位置无关,只有是同辈节点就都能匹配。
目的:基于元素的位置选择元素,又不局限于此。
语法:jQuery的位置选择器借鉴了css中伪类的语法,即选择器以冒号(:)开始,能够看作是CSS为类的一种扩展。
选择器 | 说明 |
:first | 第一个元素,例如div p:first选中页面中全部p元素的第一个,且该p元素是div的子元素 |
:last | 最后一个元素,例如div p:last选中页面中全部p元素的最后一个,且该p元素是div的子元素 |
:first-child | 第一个子元素,例如ul:first-child选中全部的ul元素,且该ul元素是其父元素的第一个子元素 |
:last-child | 最后一个子元素,例如ul:last-child选中全部的ul元素,且该ul元素是其父元素的最后一个子元素 |
:only-child | 全部没有兄弟的子元素,例如p:only-child选中全部的p元素,若是该p元素是其父元素的惟一子元素 |
:nth-child(n) | 第n个子元素,例如li:nth-child(3)选中全部li元素,且该li元素是其父元素的第3个子元素(从1开始计数) |
:nth-child(odd|even) | 全部的奇数号或偶数号的子元素 |
:nth-child(nX+Y) | 利用公式来计算子元素的位置,例如:nth-child(5n+1)选中第5n+1个子元素(n从0开始计数,即1,6,11,...) |
:odd或:even | 对于整个页面而言,选中奇数或偶数号元素,例如p:even为页面中全部排在偶数位的p元素(从0开始计算) |
:eq(n) | 页面中第n个元素,例如p:eq(4)为页面中第5个p元素 |
:gt(n) | 页面中第n个元素以后的全部元素(不包括第n个元素) |
:lt(n) | 页面中第n个元素以前的全部元素(不包括第n个元素) |
目的:处理更复杂的选择,是jQuery自定义的,不是CSS3中的选择器。
语法:jQuery的过滤选择器借鉴了css中伪类的语法,即选择器以冒号(:)开始。
jQuery经常使用的过滤选择器
选择器 | 说明 |
:animated | 全部处于动画中的元素 |
:button | 全部按钮,包括input[type=button]、input[type=submit]、input[type=reset]和<button>标记 |
:checkbox | 全部复选框,等同于input[type=checkbox] |
:checked | 选择被选中的复选框或单选框 |
:contains(characters) | 选择全部包含了文本"characters"的元素 |
:disabled | 页面中被禁用了的元素 |
:enabled | 页面中没有被禁用的元素 |
:file | 表单中的文件上传元素,等同于input[type=file] |
:header | 选中全部标题元素,例如<h1>~<h6> |
:hidden | 匹配全部的不可见元素,例如设置为display:none的元素或input元素的type属性为“hidden”的元素 |
:image | 表单中的图片按钮,等同于input[type=image] |
:input | 表单输入元素,包括<input>、<select>、<textarea>、<button> |
:not(filter) | 反向选择 |
:parent | 选择全部拥有子元素(包括文本)的元素,即除空元素外的全部元素 |
:password | 表单中的密码域,等同于input[type=password] |
:radio | 表单中的单选按钮,等同于input[type=radio] |
:reset | 表单中的重置按钮,等同于input[type=radio]和button[type=reset] |
:selected | 下拉菜单中的被选中项 |
:submit | 表单中的提交按钮,包括input[type=submit]和button[type=submit] |
:text | 表单中的文本域,等同于input[type=text] |
:visible | 页面中的全部可见元素 |
选择器 |
实例 |
选取 |
---|---|---|
|
||
.class.class |
$(".intro.demo") |
全部 class="intro" 且 class="demo" 的元素 |
|
|
|
:first |
$("p:first") |
第一个 <p> 元素 |
:last |
$("p:last") |
最后一个 <p> 元素 |
:even |
$("tr:even") |
全部偶数 <tr> 元素 |
:odd |
$("tr:odd") |
全部奇数 <tr> 元素 |
|
|
|
:eq(index) |
$("ul li:eq(3)") |
列表中的第四个元素(index 从 0 开始) |
:gt(no) |
$("ul li:gt(3)") |
列出 index 大于 3 的元素 |
:lt(no) |
$("ul li:lt(3)") |
列出 index 小于 3 的元素 |
:not(selector) |
$("input:not(:empty)") |
全部不为空的 input 元素 |
|
|
|
:header |
$(":header") |
全部标题元素 <h1> - <h6> |
:animated |
|
全部动画元素 |
|
|
|
:contains(text) |
$(":contains('W3School')") |
包含指定字符串的全部元素 |
:empty |
$(":empty") |
无子(元素)节点的全部元素 |
:hidden |
$("p:hidden") |
全部隐藏的 <p> 元素 |
:visible |
$("table:visible") |
全部可见的表格 |
|
|
|
s1,s2,s3 |
$("th,td,.intro") |
全部带有匹配选择的元素 |
|
|
|
[attribute] |
$("[href]") |
全部带有 href 属性的元素 |
[attribute=value] |
$("[href='#']") |
全部 href 属性的值等于 "#" 的元素 |
[attribute!=value] |
$("[href!='#']") |
全部 href 属性的值不等于 "#" 的元素 |
[attribute$=value] |
$("[href$='.jpg']") |
全部 href 属性的值包含以 ".jpg" 结尾的元素 |
|
|
|
:input |
$(":input") |
全部 <input> 元素 |
:text |
$(":text") |
全部 type="text" 的 <input> 元素 |
:password |
$(":password") |
全部 type="password" 的 <input> 元素 |
:radio |
$(":radio") |
全部 type="radio" 的 <input> 元素 |
:checkbox |
$(":checkbox") |
全部 type="checkbox" 的 <input> 元素 |
:submit |
$(":submit") |
全部 type="submit" 的 <input> 元素 |
:reset |
$(":reset") |
全部 type="reset" 的 <input> 元素 |
:button |
$(":button") |
全部 type="button" 的 <input> 元素 |
:image |
$(":image") |
全部 type="image" 的 <input> 元素 |
:file |
$(":file") |
全部 type="file" 的 <input> 元素 |
|
|
|
:enabled |
$(":enabled") |
全部激活的 input 元素 |
:disabled |
$(":disabled") |
全部禁用的 input 元素 |
:selected |
$(":selected") |
全部被选取的 input 元素 |
:checked |
$(":checked") |
全部被选中的 input 元素 |
以上资料来自于:
http://www.javashuo.com/article/p-avexwrnl-h.html