進行過濾的方法:1、使用“.hasClass("類別名稱")”過濾類別名稱;2、使用“.eq(n)”過濾下標;3、使用“.is(選擇器)”過濾判斷;4、使用“.not(選擇器或函數)”反向過濾;5、使用“.filter(選擇器或函數)”過濾表達式。
本教學操作環境:windows10系統、jquery3.2.1版本、Dell G3電腦。
在jQuery 中,常見的過濾方法有以下5 種:
類別名稱過濾,指的是根據元素的class 來過濾。在 jQuery 中,我們可以使用 hasClass() 方法來實作類別名稱過濾。
語法:
$().hasClass("类名")
hasClass() 方法一般用於判斷元素是否包含指定的類別名稱:如果包含,則傳回 true;如果不包含,則傳回 false。
#下標過濾,指的是根據元素集合的下標來過濾。在 jQuery 中,我們可以使用 eq() 方法來實作下標過濾。
語法:
$().eq(n)
n 是一個整數。當 n 取值為 0 或正整數時,eq(0) 取得的是第 1 個元素,eq(1) 取得的是第 2 個元素,…,以此類推。當 n 取值為負整數時,eq(-1) 得到的是倒數第 1 個元素,eq(-2) 得到的是倒數第 2 個元素,…,以此類推。
#判斷過濾,指的是根據某些條件進行判斷,然後選取符合條件的元素。在 jQuery 中,我們可以使用 is() 方法來實作判斷過濾。
語法:
$().is(selector)
參數 selector 是選擇器。 is() 方法用於判斷在目前選擇的元素集合中是否存在符合條件的元素:如果存在,則傳回 true;如果不存在,則傳回 false。
is() 方法非常好用,能不能用好也直接決定你的程式碼是否有效率。使用 jQuery 進行開發,沒有做不到的,只有想不到的。下面列出的是is() 方法的常用功能代碼:
//判断元素是否可见 $().is(":visible") //判断元素是否处于动画中 $().is(":animated") //判断单选框或复选框是否被选中 $().is(":checked") //判断当前元素是否为第一个子元素 $(this).is(":first-child") //判断文本中是否包含jQuery这个词 $().is(":contains('jQuery')") //判断是否包含某些类名 $().is(".select")
在jQuery 中,我們也可以使用not() 方法來篩選「不符合條件」的元素,並且傳回餘下符合條件的元素。其中,not() 方法可以使用選擇器來過濾,也可以使用函數來過濾。
語法:
$().not(selector或fn)
當 not() 方法參的數是一個選擇器時,表示使用選擇器來篩選不符合條件的元素,然後選取其餘元素。當 not() 方法的參數是函數時,表示使用函數來篩選不符合條件的元素,然後選取其餘元素。
表達式過濾,指的是採用「自訂表達式」的方式來選取符合條件的元素。這種自訂表達式可以是選擇器,也可以是函數。
在 jQuery 中,表達式過濾共有兩個方法:一個是 filter() 方法,另一個是 has() 方法。
jQuery filter()方法
在jQuery 中,filter() 方法是一個功能相當強大的過濾方法,它可以使用選擇器來過濾,也可以使用函數來過濾。
1) 選擇器過濾
選擇器篩選,指的是使用選擇器來選取符合條件的元素。
語法:
$().filter(selector)
參數 selector 是選擇器。
2) 函數過濾
函數過濾,指的是根據函數的回傳值來選取符合條件的元素。
語法:
$().filter(fn)
參數 fn 是一個回呼函數。
filter() 方法非常強大,幾乎把之前學過的過濾方法的功能都包含進去了。不過正是由於 filter() 方法內部封裝的東西太多,導致運作速度非常慢。因此在實際開發中,建議大家優先考慮其他過濾方法,迫不得已時再用 filter() 方法。
jQuery has()方法
在 jQuery 中,表達式過濾除了可以使用 filter() 方法外,我們還可以使用 has() 方法。 has() 方法雖然沒有 filter() 方法那麼強大,但它的運行速度更快。
語法:
$().has(selector)
參數 selector 是選擇器。
has() 方法與 filter() 方法功能相似,不過 has() 方法只能使用選擇器來過濾,不能使用函數來過濾。因此我們可以把 has() 方法看成是 filter() 方法的精簡版。
相關影片教學推薦:jQuery影片教學
#以上是jquery用什麼過濾的詳細內容。更多資訊請關注PHP中文網其他相關文章!