您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“jquery如何進(jìn)行過(guò)濾”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“jquery如何進(jìn)行過(guò)濾”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。
進(jìn)行過(guò)濾的方法:1、使用“.hasClass("類名")”過(guò)濾類名;2、使用“.eq(n)”過(guò)濾下標(biāo);3、使用“.is(選擇器)”過(guò)濾判斷;4、使用“.not(選擇器或函數(shù))”反向過(guò)濾;5、使用“.filter(選擇器或函數(shù))”過(guò)濾表達(dá)式。
本教程操作環(huán)境:windows10系統(tǒng)、jquery3.2.1版本、Dell G3電腦。
在 jQuery 中,常見(jiàn)的過(guò)濾方法有以下 5 種:
類名過(guò)濾,指的是根據(jù)元素的 class 來(lái)過(guò)濾。在 jQuery 中,我們可以使用 hasClass() 方法來(lái)實(shí)現(xiàn)類名過(guò)濾。
語(yǔ)法:
$().hasClass("類名")
hasClass() 方法一般用于判斷元素是否包含指定的類名:如果包含,則返回 true;如果不包含,則返回 false。
下標(biāo)過(guò)濾,指的是根據(jù)元素集合的下標(biāo)來(lái)過(guò)濾。在 jQuery 中,我們可以使用 eq() 方法來(lái)實(shí)現(xiàn)下標(biāo)過(guò)濾。
語(yǔ)法:
$().eq(n)
n 是一個(gè)整數(shù)。當(dāng) n 取值為 0 或正整數(shù)時(shí),eq(0) 獲取的是第 1 個(gè)元素,eq(1) 獲取的是第 2 個(gè)元素,……,以此類推。當(dāng) n 取值為負(fù)整數(shù)時(shí),eq(-1) 獲取的是倒數(shù)第 1 個(gè)元素,eq(-2) 獲取的是倒數(shù)第 2 個(gè)元素,……,以此類推。
判斷過(guò)濾,指的是根據(jù)某些條件進(jìn)行判斷,然后選取符合條件的元素。在 jQuery 中,我們可以使用 is() 方法來(lái)實(shí)現(xiàn)判斷過(guò)濾。
語(yǔ)法:
$().is(selector)
參數(shù) selector 是一個(gè)選擇器。is() 方法用于判斷在當(dāng)前選擇的元素集合中是否存在符合條件的元素:如果存在,則返回 true;如果不存在,則返回 false。
is() 方法非常好用,能不能用好也直接決定你的代碼是否高效。使用 jQuery 進(jìn)行開發(fā),沒(méi)有做不到的,只有想不到的。下面列出的是 is() 方法的常用功能代碼:
//判斷元素是否可見(jiàn) $().is(":visible") //判斷元素是否處于動(dòng)畫中 $().is(":animated") //判斷單選框或復(fù)選框是否被選中 $().is(":checked") //判斷當(dāng)前元素是否為第一個(gè)子元素 $(this).is(":first-child") //判斷文本中是否包含jQuery這個(gè)詞 $().is(":contains('jQuery')") //判斷是否包含某些類名 $().is(".select")
在 jQuery 中,我們還可以使用 not() 方法來(lái)過(guò)濾“不符合條件”的元素,并且返回余下符合條件的元素。其中,not() 方法可以使用選擇器來(lái)過(guò)濾,也可以使用函數(shù)來(lái)過(guò)濾。
語(yǔ)法:
$().not(selector或fn)
當(dāng) not() 方法參的數(shù)是一個(gè)選擇器時(shí),表示使用選擇器來(lái)過(guò)濾不符合條件的元素,然后選取其余元素。當(dāng) not() 方法的參數(shù)是一個(gè)函數(shù)時(shí),表示使用函數(shù)來(lái)過(guò)濾不符合條件的元素,然后選取其余元素。
表達(dá)式過(guò)濾,指的是采用“自定義表達(dá)式”的方式來(lái)選取符合條件的元素。這種自定義表達(dá)式可以是選擇器,也可以是函數(shù)。
在 jQuery 中,表達(dá)式過(guò)濾共有兩個(gè)方法:一個(gè)是 filter() 方法,另一個(gè)是 has() 方法。
jQuery filter()方法
在 jQuery 中,filter() 方法是功能相當(dāng)強(qiáng)大的過(guò)濾方法,它可以使用選擇器來(lái)過(guò)濾,也可以使用函數(shù)來(lái)過(guò)濾。
1) 選擇器過(guò)濾
選擇器過(guò)濾,指的是使用選擇器來(lái)選取符合條件的元素。
語(yǔ)法:
$().filter(selector)
參數(shù) selector 是一個(gè)選擇器。
2) 函數(shù)過(guò)濾
函數(shù)過(guò)濾,指的是根據(jù)函數(shù)的返回值來(lái)選取符合條件的元素。
語(yǔ)法:
$().filter(fn)
參數(shù) fn 是一個(gè)回調(diào)函數(shù)。
filter() 方法非常強(qiáng)大,幾乎把之前學(xué)過(guò)的過(guò)濾方法的功能都包含進(jìn)去了。不過(guò)正是由于 filter() 方法內(nèi)部封裝的東西過(guò)多,導(dǎo)致運(yùn)行速度非常慢。因此在實(shí)際開發(fā)中,建議大家優(yōu)先考慮其他過(guò)濾方法,迫不得已時(shí)再用 filter() 方法。
jQuery has()方法
在 jQuery 中,表達(dá)式過(guò)濾除了可以使用 filter() 方法外,我們還可以使用 has() 方法。has() 方法雖然沒(méi)有 filter() 方法那么強(qiáng)大,但是它的運(yùn)行速度更快。
語(yǔ)法:
$().has(selector)
參數(shù) selector 是一個(gè)選擇器。
has() 方法與 filter() 方法功能相似,不過(guò) has() 方法只能使用選擇器來(lái)過(guò)濾,不能使用函數(shù)來(lái)過(guò)濾。因此我們可以把 has() 方法看成是 filter() 方法的精簡(jiǎn)版。
讀到這里,這篇“jquery如何進(jìn)行過(guò)濾”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。