首頁 web前端 js教程 jQuery查找和過濾實例詳解

jQuery查找和過濾實例詳解

Jan 06, 2018 am 09:05 AM
jquery 實例 詳解

通常情況下選擇器可以直接定位到我們想要的元素,但是,當我們拿到一個jQuery物件後,還可以以這個物件為基準,進行尋找和篩選。本文主要為大家詳細介紹了jQuery查找和過濾的相關資料,具有一定的參考價值,有興趣的小夥伴們可以參考一下,希望能幫助大家。

最常見的查找是在某個節點的所有子節點中查找,使用find()方法,它本身又接收一個任意的選擇器。例如如下的HTML結構:


1

2

3

4

5

6

7

8

<!-- HTML结构 -->

<ul class="lang">

 <li class="js dy">JavaScript</li>

 <li class="dy">Python</li>

 <li id="swift">Swift</li>

 <li class="dy">Scheme</li>

 <li name="haskell">Haskell</li>

</ul>

登入後複製

find()#

1

2

3

4

var ul = $(&#39;ul.lang&#39;); // 获得<ul>

var dy = ul.find(&#39;.dy&#39;); // 获得JavaScript, Python, Scheme

var swf = ul.find(&#39;#swift&#39;); // 获得Swift

var hsk = ul.find(&#39;[name=haskell]&#39;); // 获得Haskell

登入後複製


1

2

3

var swf = $(&#39;#swift&#39;); // 获得Swift

var parent = swf.parent(); // 获得Swift的上层节点<ul>

var a = swf.parent(&#39;p.red&#39;); // 从Swift的父节点开始向上查找,直到找到某个符合条件的节点并返回

登入後複製

如果要從目前節點開始往上查找,使用

parent()方法:


1

2

3

4

5

6

7

var swift = $(&#39;#swift&#39;);

 

swift.next(); // Scheme

swift.next(&#39;[name=haskell]&#39;); // Haskell,因为Haskell是后续第一个符合选择器条件的节点

 

swift.prev(); // Python

swift.prev(&#39;.js&#39;); // JavaScript,因为JavaScript是往前第一个符合选择器条件的节点

登入後複製

對於位於同一層級的節點,可以透過

next()prev()方法,例如:當我們已經拿到
Swift節點後:


##和函數式程式設計的map、filter類似,jQuery物件也有類似的方法。

filter()


方法可以過濾掉不符合選擇器條件的節點:##

1

2

var langs = $(&#39;ul.lang li&#39;); // 拿到JavaScript, Python, Swift, Scheme和Haskell

var a = langs.filter(&#39;.dy&#39;); // 拿到JavaScript, Python, Scheme

登入後複製

或者傳入一個函數,要特別注意函數內部的

this

被綁定為DOM對象,不是jQuery物件:

##

1

2

3

4

var langs = $(&#39;ul.lang li&#39;); // 拿到JavaScript, Python, Swift, Scheme和Haskell

langs.filter(function () {

 return this.innerHTML.indexOf(&#39;S&#39;) === 0; // 返回S开头的节点

}); // 拿到Swift, Scheme

登入後複製

map()


方法把一個jQuery物件包含的若干DOM節點轉換成其他物件:

1

2

3

4

var langs = $(&#39;ul.lang li&#39;); // 拿到JavaScript, Python, Swift, Scheme和Haskell

var arr = langs.map(function () {

 return this.innerHTML;

}).get(); // 用get()拿到包含string的Array:[&#39;JavaScript&#39;, &#39;Python&#39;, &#39;Swift&#39;, &#39;Scheme&#39;, &#39;Haskell&#39;]

登入後複製
此外,一個jQuery物件如果包含了不只一個DOM節點,

first()、last()


slice()方法可以回傳一個新的jQuery對象,把不需要的DOM節點去掉:

1

2

3

4

var langs = $(&#39;ul.lang li&#39;); // 拿到JavaScript, Python, Swift, Scheme和Haskell

var js = langs.first(); // JavaScript,相当于$(&#39;ul.lang li:first-child&#39;)

var haskell = langs.last(); // Haskell, 相当于$(&#39;ul.lang li:last-child&#39;)

var sub = langs.slice(2, 4); // Swift, Scheme, 参数和数组的slice()方法一致

登入後複製
相關推薦:

##詳解PHP實作尋找兩個陣列中不同元素的方法


php在多維數組中尋找指定值的方法

PHP二分法實現數組查找功能教程

以上是jQuery查找和過濾實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1670
14
CakePHP 教程
1428
52
Laravel 教程
1329
25
PHP教程
1273
29
C# 教程
1256
24
Win11管理員權限取得詳解 Win11管理員權限取得詳解 Mar 08, 2024 pm 03:06 PM

Windows作業系統是全球最受歡迎的作業系統之一,其新版本Win11備受矚目。在Win11系統中,管理員權限的取得是一個重要的操作,管理員權限可以讓使用者對系統進行更多的操作和設定。本文將詳細介紹在Win11系統中如何取得管理員權限,以及如何有效地管理權限。在Win11系統中,管理員權限分為本機管理員和網域管理員兩種。本機管理員是指具有對本機電腦的完全管理權限

Oracle SQL中的除法運算詳解 Oracle SQL中的除法運算詳解 Mar 10, 2024 am 09:51 AM

OracleSQL中的除法運算詳解在OracleSQL中,除法運算是一種常見且重要的數學運算運算,用來計算兩個數相除的結果。除法在資料庫查詢中經常用到,因此了解OracleSQL中的除法運算及其用法是資料庫開發人員必備的技能之一。本文將詳細討論OracleSQL中除法運算的相關知識,並提供具體的程式碼範例供讀者參考。一、OracleSQL中的除法運算

jQuery中如何使用PUT請求方式? jQuery中如何使用PUT請求方式? Feb 28, 2024 pm 03:12 PM

jQuery中如何使用PUT請求方式?在jQuery中,發送PUT請求的方法與發送其他類型的請求類似,但需要注意一些細節和參數設定。 PUT請求通常用於更新資源,例如更新資料庫中的資料或更新伺服器上的檔案。以下是在jQuery中使用PUT請求方式的具體程式碼範例。首先,確保引入了jQuery庫文件,然後可以透過以下方式發送PUT請求:$.ajax({u

jQuery小技巧:快速修改頁面所有a標籤的文本 jQuery小技巧:快速修改頁面所有a標籤的文本 Feb 28, 2024 pm 09:06 PM

標題:jQuery小技巧:快速修改頁面所有a標籤的文字在網頁開發中,我們經常需要對頁面中的元素進行修改和操作。使用jQuery時,有時候需要一次修改頁面中所有a標籤的文字內容,這樣可以節省時間和精力。以下將介紹如何使用jQuery快速修改頁面所有a標籤的文本,同時給出具體的程式碼範例。首先,我們需要引入jQuery庫文件,確保在頁面中引入了以下程式碼:&lt

PHP模運算子的作用及用法詳解 PHP模運算子的作用及用法詳解 Mar 19, 2024 pm 04:33 PM

PHP中的模運算子(%)是用來取得兩個數值相除的餘數的。在本文中,我們將詳細討論模運算子的作用及用法,並提供具體的程式碼範例來幫助讀者更好地理解。 1.模運算子的作用在數學中,當我們將一個整數除以另一個整數時,就會得到一個商和一個餘數。例如,當我們將10除以3時,商數為3,餘數為1。模運算子就是用來取得這個餘數的。 2.模運算子的用法在PHP中,使用%符號來表示模

使用jQuery修改所有a標籤的文字內容 使用jQuery修改所有a標籤的文字內容 Feb 28, 2024 pm 05:42 PM

標題:使用jQuery修改所有a標籤的文字內容jQuery是一款受歡迎的JavaScript庫,被廣泛用於處理DOM操作。在網頁開發中,經常會遇到需要修改頁面上連結標籤(a標籤)的文字內容的需求。本文將介紹如何使用jQuery來實現這個目標,並提供具體的程式碼範例。首先,我們需要在頁面中引入jQuery庫。在HTML檔案中加入以下程式碼:

使用jQuery為表格新增一行的方法介紹 使用jQuery為表格新增一行的方法介紹 Feb 29, 2024 am 08:12 AM

jQuery是一個受歡迎的JavaScript函式庫,廣泛用於網頁開發。在網頁開發過程中,經常需要透過JavaScript動態地在表格中新增一行。本文將介紹如何使用jQuery為表格新增一行,並提供具體的程式碼範例。首先,我們需要在HTML頁面中引入jQuery函式庫。可以透過以下程式碼在標籤中引入jQuery庫:

如何判斷jQuery元素是否具有特定屬性? 如何判斷jQuery元素是否具有特定屬性? Feb 29, 2024 am 09:03 AM

如何判斷jQuery元素是否具有特定屬性?在使用jQuery操作DOM元素時,常會遇到需要判斷元素是否具有某個特定屬性的情況。在這種情況下,我們可以藉助jQuery提供的方法來輕鬆實現這項功能。以下將介紹兩種常用的方法來判斷一個jQuery元素是否具有特定屬性,並附上具體的程式碼範例。方法一:使用attr()方法和typeof運算子//判斷元素是否具有特定屬

See all articles