$(“#xxxx”)獲取的永遠(yuǎn)是對象,即使網(wǎng)頁上沒有此元素茁瘦,如果要檢查jQuery某個(gè)元素在網(wǎng)頁上是否存在的話品抽,就要根據(jù)獲取元素的長度來判斷,比如:
if("#XXXX").leng>0{? ?}
JQuery選擇器分別為基本選擇器甜熔、層次選擇器圆恤、過濾選擇器和表單選擇器
1. 基本選擇器
$(“#id”):id選擇器
$(“.className”):類名選擇器
$(“element”):元素選擇器
$(“xxx,xxxx,xxx”):混合選擇器
2. 層次選擇器
通過DOM元素之間的層次關(guān)系來獲取特定元素,例如后代元素腔稀,子元素盆昙,相鄰元素和同輩元素等等羽历。
$(“x y”):選取x元素里的所有y元素(后代),$(“div span”):選取div元素里所有span元素
$(“parent>child”):選取parent元素的子元素淡喜,$(“div span”):選取div元素下窄陡,元素名為span的子元素
$(“prev+next'”):選取緊接在prev元素后的next元素,$(“.one+div”)獲取class名為one的下一個(gè)div同輩元素
$(“prev~siblings”):選取prev元素之后的所有silbings同輩元素
其中最后兩個(gè)選擇器拆火,分別可以用:next()和nextAll()方法代替
比如:
$("div").next("span")=$("div+span")
3. 過濾選擇器
主要通過特點(diǎn)的過濾規(guī)則來篩選出所需要的DOM元素,以冒號開頭涂圆,和css中的偽類選擇器一樣们镜。
:first? ? ?選取第一個(gè)元素,$(“div:first”)選取div元素中的第一個(gè)div元素
:last? ? ?選取最后一個(gè)元素润歉,$(“div:last”)選取div元素中的最后一個(gè)div元素
:not(selector)? ? ?去除所有與給定選擇器匹配的元素模狭,$(“input:not(.o)”)選取類名不是o的input元素
:even? ? ?選取索引是偶數(shù)的所有元素,$(“div:even”)選取索引是偶數(shù)的div元素踩衩,從0開始
:odd? ? 選取索引是奇數(shù)的所有元素嚼鹉,$(“div:odd”)選取索引是奇數(shù)的div元素,從0開始
:eq(index)? ? ?選取索引等于index的元素驱富,$(“input:eq(1)”)選取索引為1的input元素
:gt(index)? ? ?選取索引大于index的元素锚赤,$(“input:gt(1)”)選取索引大于1的input元素
:lt(index)? ? ?選取索引小于index的元素,$(“input:lt(1)”)選取索引小于1的input元素
:header? ? ?選取索引標(biāo)題元素
:animated? ? ?選取當(dāng)前正在執(zhí)行動(dòng)畫的所有元素褐鸥,$(“div:animated”)選取正在執(zhí)行動(dòng)畫的div元素
:focus? ? ?選取當(dāng)前獲取焦點(diǎn)的元素线脚,$(“:focus”)
4. 內(nèi)容過濾選擇器
內(nèi)容過濾器的過濾規(guī)則主要體現(xiàn)在他所包含的子元素或文本內(nèi)容上。
:contains(text)? ? ?選取含有文本內(nèi)容為text的元素叫榕,$(“div:contains(“我”)”)選取在div元素中有“我”的元素
:empty? ? ?選取不包含子元素或者文本的空元素浑侥,$(“div:empty”)選取在div元素中沒有子元素的元素
:has(selector)? ? ?選取含有選擇器所匹配的元素的元素,$(“div:has(p)”)選取含有p元素的div元素
:parent? ? ?選取含有子元素或者文本的元素晰绎,$(“div:parent”)選取擁有子元素的
元素
5. 可見性過濾選擇器
根據(jù)元素的可見和不可見狀態(tài)來選擇相應(yīng)的元素寓落。
:hidden? ? ?選取所有不可見的元素
:visible? ? ?選取所有可見的元素
6. 屬性過濾選擇器
通過元素的屬性來獲取相應(yīng)的元素。
[attribute]:選取擁有此屬性的元素荞下,$(“div[id]”)選取div中有id屬性的div元素
[attribute=value]:選取屬性值為value的元素伶选,$(“div[title=test]”)選取在div中title屬性值為test的div元素
[attribute!=value]:選取屬性值不等于value的元素,$(“div[title!=test]”)選取title不等于test的div元素锄弱,沒有title屬性的div元素也會被選
[attribute^=value]:選取屬性值以value開始的元素
[attribute$=value]:選取屬性值以value結(jié)束的元素
[attribute*=value]:選取屬性值含有value的元素
7. 子元素過濾選擇器
:nth-child? ? ?選取每個(gè)父元素下的第index個(gè)子元素或者奇偶元素考蕾,從1開始計(jì)算
:first-child? ? ?選取每個(gè)父元素的第一個(gè)子元素
:lat-child? ? ?選取每個(gè)父元素下的最后一個(gè)子元素
:only-child? ? ?如果某個(gè)元素是他父元素的唯一的子元素,那么他會被選取
8. 表單對象屬性過濾器
對所選擇的表單元素進(jìn)行過濾
:enabled? ? ?選取所有可用元素会宪,$(“#form1:enabled”)選取id為form1的表單內(nèi)所有可用元素
:disabled? ? ?選取所有不可用元素肖卧,$(“#form1:disabled”)選取id為form1的表單內(nèi)所有不可用的元素
:checked? ? ?選取所有被選中的元素(單選,復(fù)選框)掸鹅,$(“input:checked”)選取所有被選中的input元素
:selected? ? ?選取所有被選中的下拉列表元素塞帐,$(“select option:selected”)選取所有被選中的選項(xiàng)元素