php 获取子孙,jquery如何查找后代元素?jquery获取后代元素方法
在上一篇我們講到j(luò)query獲取父元素?相信你已經(jīng)學(xué)會(huì)了,那么下面我們來講一下jquery如何查找后代元素?jquery獲取后代元素方法。
一: 查找后代元素三種方法
(1)children();
(2)contents();
(3)find();
所謂的后代元素,就是某個(gè)元素的“子元素”、“孫元素”……。孫元素,在前端雖然沒這個(gè)說法,但是卻比較形象,所以這一節(jié)使用這一個(gè)說法。
二:jquery獲取后代元素方法
1.children()方法
在jQuery中,我們可以使用children()方法來查找當(dāng)前元素的“所有子元素”或“部分子元素”。注意,children()方法只能查找子元素,不能查找其他后代元素。
語法:children(expression)
說明:參數(shù)expression表示jQuery選擇器表達(dá)式,用來過濾子元素。當(dāng)參數(shù)省略時(shí),則將選擇所有的子元素。如果參數(shù)不省略,則表示選擇符合條件的子元素。
舉例:
$(function () {
$(".wrapper").hover(function () {
$(this).children(".test").css("color", "red");
}, function () {
$(this).children(".test").css("color", "black");
})
})
子元素- 孫元素
- 孫元素
- 孫元素
子元素
- 孫元素
- 孫元素
- 孫元素
效果如下:
當(dāng)我們鼠標(biāo)移到第1個(gè)class為wrapper的div元素上時(shí),在瀏覽器預(yù)覽效果如下:
分析:$(this).children(".test")表示選擇當(dāng)前元素下class為test的“子元素”。在這里我們會(huì)發(fā)現(xiàn),雖然也有class為test的“孫元素”,但是使用children()方法卻不會(huì)將“孫元素”選中。
2.contents()方法
與children()方法相似,contents()方法也是用來查找子內(nèi)容的,但它不僅獲取子元素,還可以獲取文本節(jié)點(diǎn)、注釋節(jié)點(diǎn)等。因此讀者可以把它視為DOM中childNodes屬性的jQuery實(shí)現(xiàn)。contents()方法很少用,作為初學(xué)者我們可以直接忽略這個(gè)方法。
我記得在之前不少教程中,對(duì)于常見但不常用的一些知識(shí),都會(huì)多少提及一下。很多熱心的建議說,站長(zhǎng)啊,既然這個(gè)知識(shí)用不到,浪費(fèi)篇幅,干嘛提及呢?直接刪除都行了。其實(shí)嘛,道理很簡(jiǎn)單:學(xué)習(xí)知識(shí),知道“哪些不用深入學(xué)習(xí)”,跟“知道哪些需要深入學(xué)習(xí)”是同等重要的。一來為了方便讀者理清思路,二來以后碰到這個(gè)知識(shí)了,也有那么點(diǎn)印象不至于手忙腳亂。
3.find()方法
find()方法和children()方法相似,都是用來查找所選元素的后代元素,但是find()方法能夠查找所有后代元素,而children()方法僅能夠查找子元素。
find()方法和children()方法使用頻率差不多,同等重要。大家要認(rèn)真掌握,并且認(rèn)真區(qū)分。
語法:find(expression)
說明:參數(shù)expression表示jQuery選擇器表達(dá)式,用來過濾子元素。當(dāng)參數(shù)省略時(shí),則將選擇所有的子元素。如果參數(shù)不省略,則表示選擇符合條件的子元素。
舉例:
$(function () {
$(".wrapper").hover(function () {
$(this).find(".test").css("color", "red");
}, function () {
$(this).find(".test").css("color", "black");
})
})
子元素- 孫元素
- 孫元素
- 孫元素
子元素
- 孫元素
- 孫元素
- 孫元素
默認(rèn)情況下,在瀏覽器預(yù)覽效果如下:
當(dāng)我們鼠標(biāo)移到第1個(gè)class為wrapper的div元素上時(shí),在瀏覽器預(yù)覽效果如下:
分析:$(this).find(".test")表示選擇當(dāng)前元素下的class為test的所有“后代元素”,既包括子元素,也包括孫元素等所有后代元素。大家將find()方法這個(gè)例子跟children()方法那個(gè)例子對(duì)比一下,就能很直觀發(fā)現(xiàn)兩者之間的不同。
與children()方法相似,contents()方法也是用來查找子內(nèi)容的,但它不僅獲取子元素,還可以獲取文本節(jié)點(diǎn)、注釋節(jié)點(diǎn)等。因此讀者可以把它視為DOM中childNodes屬性的jQuery實(shí)現(xiàn)。contents()方法很少用,作為初學(xué)者我們可以直接忽略這個(gè)方法。如果想要深入學(xué)習(xí)的話,可以參考:jQuery教程。
總結(jié)
以上是生活随笔為你收集整理的php 获取子孙,jquery如何查找后代元素?jquery获取后代元素方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jquery 判断点击次数_jquery
- 下一篇: laragon环境安装新的php版本后弹