$()函數(shù)在很多JavaScript類(lèi)庫(kù)中都被作為一個(gè)選擇器函數(shù)來(lái)使用,在jQuery中就是.
$(“#id”)通過(guò)id來(lái)獲取元素,用來(lái)代替document.getElementById()函數(shù).
$(“tagName”)通過(guò)標(biāo)簽名來(lái)獲取元素,用來(lái)代替document.getElementsByTagName()函數(shù).
jQuery的基本語(yǔ)法是:$(selector).action(), selector即選擇器.
jQuery選擇器的分類(lèi)
jQuery的選擇器基本可以分為四大類(lèi):
基本選擇器(basic)
層次選擇器(level)
過(guò)濾選擇器(filter)
表單選擇器(form)
有些類(lèi)別又可以分為具體的子類(lèi)別.
基本選擇器

* 匹配所有元素.示例:$(“*")選取所有元素.
#id根據(jù)給定的id匹配元素(最多只返回一個(gè)元素).示例: $("#lastname”)選取id="lastname"的元素.
.class根據(jù)給定的類(lèi)名匹配元素.示例:$(".intro”)選取所有class=“intro"的元素.
element根據(jù)給定的元素名匹配元素.示例: $(“p")選取所有<p>元素.
.class.class 示例: $(".intro.demo”)選取所有且class="demo”的元素.(交集).
selector1, selector2, …, selectorN, 將每一個(gè)選擇器匹配到的元素合并后一起返回.(并集).
除了#id選擇器返回單個(gè)元素外,其他選擇器返回的都是元素集合.
這是因?yàn)镠TML規(guī)范里面id應(yīng)該是唯一的,所以重復(fù)id的元素沒(méi)有被考慮.
如果多個(gè)元素的id相同,取這個(gè)id也只能獲取第一個(gè)元素.即獲取的jQuery對(duì)象的length屬性是1.
如果要匹配的元素不存在,則都返回一個(gè)空的jQuery對(duì)象.
基本選擇器之間可以組合,用逗號(hào)分隔,結(jié)果取所有條件的結(jié)果的并集.
當(dāng)沒(méi)有用逗號(hào)分隔時(shí),應(yīng)該是所有條件都滿(mǎn)足的交集.
層次選擇器

$(“ancestor descendant”) 選取ancestor元素里的所有descendant后代元素,包括直接子元素和更深嵌套的后代元素.
例:$(“div span”)選取<div>里的所有的<span>元素.
注意:選擇器都是全頁(yè)面掃描,返回一個(gè)集合,所有符合選擇條件的元素都會(huì)被包括進(jìn)去.所以多個(gè)<div>下面的<span>都會(huì)被選擇.
$(“parent>child”)選取parent元素下的child子元素,即只有直接子元素被選取.其他后代元素不包括.
例:$(“div>span”)選取<div>元素下元素名是<span>的子元素.
$(“prev+next”)選取緊接在prev元素后的next元素(同一層級(jí)).
例:$(“.one+div”)選取class為one的下一個(gè)div元素.
$(“prev+siblings”)選取prev元素之后的所有siblings元素(同一層級(jí)).
例:$(“#two~div”)選取id為two的元素后面的所有<div>兄弟元素.
等價(jià)方法:
$(“prev+next”)等價(jià)于方法$(“prev”).next(“next”);選取prev元素之后緊接著的一個(gè)next元素.
$(“prev~sublings”)等價(jià)于方法$(“prev”).nextAll(“sublings”),選取prev元素之后的所有同級(jí)的sublings元素.
而$(“prev”).sublings(“next”)方法選取與prev同輩的所有next元素,與前后位置無(wú)關(guān).
過(guò)濾選擇器
過(guò)濾選擇器這個(gè)大類(lèi)又分為六個(gè)子類(lèi):
基本過(guò)濾;內(nèi)容過(guò)濾;可見(jiàn)性過(guò)濾;屬性過(guò)濾;子元素過(guò)濾;表單對(duì)象屬性過(guò)濾.
基本過(guò)濾

gt和lt分別是greaterthan和lessthan.

內(nèi)容過(guò)濾

可見(jiàn)性過(guò)濾

屬性過(guò)濾

屬性過(guò)濾是用方括號(hào)來(lái)標(biāo)識(shí)的.
注意多個(gè)屬性過(guò)濾選擇器連在一起的時(shí)候,取的是結(jié)果的交集.
子元素過(guò)濾

前面基本過(guò)濾選擇器里面index是從0算起的,這里子元素過(guò)濾選擇器的index是從1開(kāi)始算起的.
表單對(duì)象屬性過(guò)濾

表單選擇器

新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注