jQuery選擇器的強大不僅在於選擇器支援基本的css選擇符,還支援許多CSS的偽類選擇符,甚至可以自訂選擇符,以下讓我們來看看一些偽類選擇符
:nth-child的用法
nth-child是css3偽類選擇符,在jQuery實現了,在Jquery API中對nth-child的定義是:」符合其父元素下的第N個子或奇偶元素」。讀著感覺有點繞口,下面讓我們用例子來說明:
- one
- two
- three four
- five
- six
- seven
- eight
- nine
- 1
- 4
- 5
- 6
- 7
- 6
- 8
- 9
li>3
>
$("li:nth-child(2)").css("background-color", "blue");
API定義中的符合其父輩指的是所選元素的父元素不同,則分開選擇。在上面例子中雖然一共選擇18個
- 理解了上面匹配父輩元素,下面來說說這個選擇符參數的用法.
向上面那樣直接給出選擇的位置,但是這裡注意,這個位置是以1為開始的,而不是0 n個倍數選擇法,比如可以使3n 1,-3n 1,4n,等,匹配所有頁面上存在的n的倍數
li>five
>
效果:
可見相對應的元素都被符合
3.還有一種用法是我們熟知的odd和even,就是奇數和偶數,如下:
效果:
:first-child&last-child
從上面的nth-child可以看到」符合父類別下的「意義,first-child和last-child也同樣是這樣.它們可以看做nth-child的封裝:
first-child和nth-child(1)等價,這裡就不多說了.
而first-child目前我還找不到等價的nth-child表達式,符合父類別下的最後一個子元素:
效果:
:input不只是匹配input
個選擇符我想大家都比較熟悉,但是要注意,input偽類選擇符不只是匹配標籤,還會匹配
偽類選擇子可以巢狀
通常情況下,我們可以透過巢狀偽類選擇符來達到我們需要的效果,偽類選擇符,如下:
- 1
- 2
- 4
- 5
- 6
- 7
效果:
可見,除了第一個和最後一個li,其它都被選擇.當然,嵌套是有層數限制的,具體的次數我就不太清了(各位高手記得麻煩告訴我下),反正夠你進行不是變態的使用:-)
自訂偽類選擇子
jquery也提供給我們擴充原有選擇符的方式,可以讓我們根據自己的需求自訂選擇符,以下透過一個有實際意義的例子看如何做到:
在我們使用jquery的serialize方法將目前表單中的元素提交到伺服器時,總是會選上asp.net的ViewState()這無疑浪費了很多資源,我們透過一個擴充的偽類選擇符看如何不選擇它:
透過$.expr的方式對偽類選擇子進行擴展,可以看出,上面的選擇符使用:noViewState後,viewStateState沒有被選擇.
小結:
jQuery的偽類選擇符是很強大的一項功能,它內置了很多種方便我們選擇的選擇符,我們可以嵌套甚至擴展這些偽類選擇符.這讓我們的js編程更加愉悅了許多.

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

禪工作室 13.0.1
強大的PHP整合開發環境

Atom編輯器mac版下載
最受歡迎的的開源編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。