選擇器是jQuery的根基,在jQuery中,對事件處理、遍歷DOM和Ajax操作都依賴於選擇器。因此,如果能熟練的使用選擇器,不僅能簡化代碼,而且可以達到事半功倍的效果。jQuery選擇器完全繼承了CSS的風格。利用jQuery選擇器,可以非常便捷的找出特定的DOM元素,然後為它們添加相應的行為, ...
選擇器是jQuery的根基,在jQuery中,對事件處理、遍歷DOM和Ajax操作都依賴於選擇器。因此,如果能熟練的使用選擇器,不僅能簡化代碼,而且可以達到事半功倍的效果。jQuery選擇器完全繼承了CSS的風格。利用jQuery選擇器,可以非常便捷的找出特定的DOM元素,然後為它們添加相應的行為,而無需擔心瀏覽器是否支持這一選擇器。
jQuery選擇器可簡單分為基本選擇器、層次選擇器、過濾選擇器、表單選擇器。下麵通過表格進行一一介紹。
1.基本選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
#id | 匹配給定的id | 單個元素 | $(“header”) |
.class | 匹配給定的類名 | 集合元素 | $(“.test”) |
E | 匹配給定的標簽名 | 集合元素 | $(“div”) |
* | 匹配所有元素 | 集合元素 | $(“*’) |
E, .class, E… | 匹配給定的集合 | 集合元素 | $(“span, .tiPS”) |
2.層次選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
$(“ancestor descendant”) | 匹配ancestor里的所有 descendant(後代)元素 |
集合元素 | $(“body div”) |
$(“parent>child”) | 匹配parent下的所有 child(子)元素 |
集合元素 | $(“div>span”) |
$(“prev+next”) | 匹配緊接在prev後的 next元素 |
集合元素 | $(“.error+span”) |
$(“prev~siblings”) | 匹配prev後的所有 siblings元素 |
集合元素 | $(“span~a”) |
3.過濾選擇器
3.1 基本過濾選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
:first | 匹配第一個元素 | 單個元素 | $(“div:first”) |
:last | 匹配最後一個元素 | 單個元素 | $(“span:last”) |
:even | 匹配索引是偶數的元素 索引從0開始 |
集合元素 | $(“li:even”) |
: odd | 匹配索引是奇數的元素 索引從0開始 |
集合元素 | $(“li:odd”) |
:eq(index) | 匹配索引等於index的元 素(索引從0開始) |
單個元素 | $(“input:eq(2)”) |
:gt(index) | 匹配索引大於index的元 素(索引從0開始) |
集合元素 | $(“input:gt(1)”) |
:lt(index) | 匹配索引小於index的元 素(索引從0開始) |
集合元素 | $(“input:lt(5)”) |
:header | 匹配所有h1,h2…等 標題元素 |
集合元素 | $(“:header”) |
:animated | 匹配所有正在執行 動畫的元素 |
集合元素 | $(“div:animated”) |
3.2 內容過濾選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
:contains(text) | 匹配含有文本內容text 的元素 |
集合元素 | $(“p:contains(今天)”) |
:empty | 匹配不含子元素或 文本元素的空元素 |
集合元素 | $(“p:empty”) |
:has(selector) | 匹配包含selector元素 的元素 |
集合元素 | $(“div:has(span)”) |
:parent | 匹配含有子元素或文本 的元素 |
集合元素 | $(“div:parent”) |
3.3 可見性過濾選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
:hidden | 匹配所有不可見 的元素 |
集合元素 | $(“:hidden”) |
:visible | 匹配所有可見元素 | 集合元素 | $(“:visible”) |
3.4 屬性過濾選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
[attr] | 匹配擁有此屬性 的元素 |
集合元素 | $(“img[alt]“) |
[attr=value] | 匹配屬性值為value 的元素 |
集合元素 | $(“a[title=test]“) |
[attr!=value] | 匹配屬性值不等於 value的元素 |
集合元素 | $(“a[title!=test]“) |
[attr^=value] | 匹配屬性值以value 開頭的元素 |
集合元素 | $(“img[alt^=welcome]“) |
[attr$=value] | 匹配屬性值以value 結尾的元素 |
集合元素 | $(“img[alt$=last]“) |
[attr*=vlaue] | 匹配屬性值中含有 value的元素 |
集合元素 | $(“div[title*=test]“) |
[attr1][attr2]… | 通過多個屬性 進行匹配 |
集合元素 | $(“div[id][title*=test]“) |
3.5 子元素過濾選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
:nth-child | 匹配每個父元素下的 第index個子元素 索引從1開始 |
集合元素 | $(“div:nth-child(2)”) |
:first-child | 匹配每個父元素的 第一個子元素 |
集合元素 | $(“div:first-child”) |
:last-child | 匹配每個父元素的 最後一個子元素 |
集合元素 | $(“div:last-child”) |
: only-child | 某元素是它父元素中 的唯一的子元素 則匹配它 |
集合元素 | $(“div:only-child”) |
3.6 表單對象屬性過濾選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
:enabled | 匹配所有可用元素 | 集合元素 | $(“form :enabled”) |
:disabled | 匹配所有不可用 的元素 |
集合元素 | $(“form :disabled”) |
:checked | 匹配所有被選中的元素 (含單選框,覆選框) |
集合元素 | $(“input:checked”) |
:selected | 匹配所有被選中的 選項元素 |
集合元素 | $(“select :selected”) |
4.表單選擇器
選擇器 | 描 述 | 返 回 | 示 例 |
---|---|---|---|
:input | 匹配所有input, textarea, select, button元素 |
集合元素 | $(“input”) |
:text | 匹配所有文本框 | 集合元素 | $(“:text”) |
:password | 匹配所有密碼框 | 集合元素 | $(“:password”) |
:radio | 匹配所有單選框 | 集合元素 | $(“:radio”) |
:checkbox | 匹配所有所有多選框 | 集合元素 | $(“:checkbox”) |
:submit | 匹配所有提交按鈕 | 集合元素 | $(“:submit”) |
:image | 匹配所有圖像按鈕 | 集合元素 | $(“:image”) |
:reset | 匹配所有重置按鈕 | 集合元素 | $(“:reset”) |
:button | 匹配所有按鈕 | 集合元素 | $(“:button”) |
:file | 匹配所有上傳域 | 集合元素 | $(“:file”) |