最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

jQuery 選擇器之eq是什么意思

代碼如下,請(qǐng)問(wèn)各位大神,eq選擇器的正確用法,并且如何使用如下代碼中用到的三種選擇方法獲得相同的對(duì)象 ??

??? <div class="dh">
?? ??? ??? ??? ?<span>第一頁(yè)</span>
?? ??? ??? ??? ?<span>第二頁(yè)</span>
?? ??? ??? ??? ?<span>第三頁(yè)</span>
?? ??? ??? ??? ?<span>第四頁(yè)</span>
?? ??? ??? ??? ?<span>第五頁(yè)</span>
?? ??? ??? ?</div>
?? ??? ??? ?<script type="text/javascript">
?? ??? ??? ??? ?var $btn = $('.dh span');
?? ??? ??? ??? ?var $no3=$('.dh span:eq(3)');
?? ??? ??? ??? ?var $no_3=$('.dh span:nth-child(4)');?? ?
?? ??? ??? ??? ?console.log($btn[2]);
?? ??? ??? ??? ?console.log($no3);
?? ??? ??? ??? ?console.log($no_3);???
</script>


正在回答

4 回答

回復(fù) 無(wú)所畏懼小小?。?/p>

首先指出你問(wèn)題里面的一個(gè)錯(cuò)誤:$('.dh span').[3],這個(gè)寫法是不對(duì)的,沒(méi)有這種語(yǔ)法

回答:

關(guān)于這部分的知識(shí),和CSS選擇器的知識(shí)是重合的,jQuery在做元素選擇上的時(shí)候,寫法和CSS幾乎是一樣的,拿jQuery和CSS做對(duì)比吧,這樣可能容易理解一點(diǎn)。

基于你的代碼來(lái)做研究:

1.? $('.dh span')

這句的意識(shí)是:選中 類名為 dh 下的所有后代元素 span,那么我們?cè)趯慍SS時(shí),要選中這類元素做樣式,寫法就是:

.dh span { .... }

2.?$('.dh span').eq(3) ?等價(jià)于?$('.dh span:eq(3)')

這個(gè)意思已經(jīng)解釋過(guò)了,不再贅述,寫CSS時(shí),寫成:

.dh span:nth-child[4] { ... }

3.?.dh span:nth-child(4)

這句的意思是:?選中類名為 dh 下的后代元素 span 集合中的第4個(gè) span 元素,可能你已經(jīng)看到了,這個(gè)寫法和第二個(gè)CSS選擇器的寫法是一樣的,其實(shí)在你的例子中:

$('.dh span:eq(3)') 和??.dh span:nth-child(4) 是指向了同一個(gè)元素,這兩句只是用不同的方式指向了同一個(gè)元素而已,理解上是一模一樣的。

問(wèn)題:那么為什么 eq的用了參數(shù)3,而nth-child用了參數(shù)4呢?

eq使用的是下標(biāo)值的方式,下標(biāo)值是從0開始計(jì)數(shù)的,所以當(dāng)你要選擇第四個(gè)元素,就寫成3;

nth-child使用的是自然數(shù)方式,選擇第四個(gè)元素,就寫成4


最后再擴(kuò)展一下:$('.dh span').eq(3)? 這種寫法在課程里面沒(méi)有出現(xiàn),那么這么寫有什么好處么?

設(shè)想一下,給你上面的HTML結(jié)構(gòu)下的span元素依次添加同一個(gè)樣式(注意這里是一個(gè)個(gè)的添加樣式,不是同時(shí)添加),我們?cè)撛趺磳??首先考慮的是使用for循環(huán)來(lái)實(shí)現(xiàn)

代碼如下:

for(?var?i?=?0;?i<$('.dh?span').lenght;?i++){
????$('.dh?span:eq('+i+')').css("color","red");?//這里使用$('.dh?span:eq(3)')的方式來(lái)寫,必須要使用字符串鏈接
}

上面的寫法很麻煩對(duì)吧,要加一堆連接符,那么改成這樣

for(?var?i?=?0;?i<$('.dh?span').lenght;?i++){
????$('.dh?span).eq(i).css("color","red");?//簡(jiǎn)單明了
}


0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

無(wú)所畏懼小小小 提問(wèn)者

非常感謝!
2016-10-27 回復(fù) 有任何疑惑可以回復(fù)我~
#2

無(wú)所畏懼小小小 提問(wèn)者

理解了,謝謝
2016-10-27 回復(fù) 有任何疑惑可以回復(fù)我~

$('.dh span:eq(3)')

選擇類名為 .dh 的元素的后代元素 中標(biāo)簽名稱為 span 元素的 索引值為3 的元素(即:.dh元素的第4個(gè)span子元素)

上面的寫法等價(jià)于:

$('.dh span').eq(3)

寫成這樣是不是比較好理解?

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

無(wú)所畏懼小小小 提問(wèn)者

你說(shuō)的這樣我理解了,謝謝。不過(guò)能解釋下$('.dh span').eq(3)、$('.dh span').[3]、.dh span:nth-child(4) 的區(qū)別?
2016-10-26 回復(fù) 有任何疑惑可以回復(fù)我~

eq(index):索引到index+1的位置上

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

無(wú)所畏懼小小小 提問(wèn)者

謝謝你,問(wèn)題解決了
2016-10-27 回復(fù) 有任何疑惑可以回復(fù)我~

如eq(index).css;

索引到index位置上,給特定位置添加樣式;

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

無(wú)所畏懼小小小 提問(wèn)者

謝謝,問(wèn)題已經(jīng)解決
2016-10-27 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

jQuery 選擇器之eq是什么意思

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)