第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

$("li").css('')和$("li").each有什么區(qū)別嗎?

$("li").css('')

$("li").each(function (index,element) { $(this).css(''); ?})

有什么區(qū)別嗎?

下面這樣寫為什么只改變了第一個li的樣式,each相當于for循環(huán)那不應該三個都變嗎

$("li").each(function (index,element) {
? ?$(this).eq(index).css('background','red');
})


正在回答

5 回答

至于你說的為什么只改變了第一個,this是指向當前的這一個li,所以$(this).eq(index)每一次操作的時候是對一個元素的操作,index=0時,第一個就相當于 第一個li.eq(0) 所以取了,但是index=1之后,eq(1),eq(2)取第二個第三個元素對吧,但是$(this)每次只有一個,所以不可能取到。 你alert($(this).eq(index))可以看到的。

5 回復 有任何疑惑可以回復我~
#1

apianmuse 提問者

非常感謝!
2018-01-16 回復 有任何疑惑可以回復我~

????這個的區(qū)別就是$("li").css("需要添加的樣式")相當于$("li").each(function(){ $(this).css(需要添加的樣式) }),

只不過.css()方法已經(jīng)把后面我寫的each()以及回調(diào)函數(shù)給封裝起來了,你看不見,你只需要給它“需要添加的樣式”這個參數(shù)就行了,這也是面對對象的概念,注重做什么,不關注怎么做的,這里講each()是因為,each()方法我們平時迭代也可以用的到

0 回復 有任何疑惑可以回復我~

$("li").css('')和$("li").each的區(qū)別:通過$()方法找到指定的元素合集后可以進行一系列的操作。比如我們操作$("li").css('') 給所有的li設置style值,因為jQuery是一個合集對象,所以[css方法內(nèi)部就必須封裝一個遍歷的方法],被稱為隱式迭代的過程。要一個一個給合集中每一個li設置顏色,這里方法就是[each],學each()方法是給你一個遍歷的jq方法方便自己定義fun,css()里面已經(jīng)封裝了。

1 回復 有任何疑惑可以回復我~

你這種寫法我轉換下:

for(index=0;index<3;index++)

{

li[index].eq(index)

}

這個li[index]本身就只有一個元素,下表為0的時候取到本身,下標大于0之后沒有取得呢。

望采納,一起學習。

5 回復 有任何疑惑可以回復我~

?$(this).eq(index).css('background','red'); 問題出在eq(index)上,因為外面用了each,所以你這里的$(this)就相當于已經(jīng)遍歷過了,這里的$(this)就已經(jīng)起到了你加eq()想讓他遍歷的愿望。

3 回復 有任何疑惑可以回復我~
#1

apianmuse 提問者

each()可以在遍歷的過程中進行選擇,而css只能給全部設置。我這樣理解對不對
2018-01-16 回復 有任何疑惑可以回復我~
#2

_Rainy 回復 apianmuse 提問者

是的 each可以痛下fun設置
2018-01-16 回復 有任何疑惑可以回復我~
#3

apianmuse 提問者 回復 _Rainy

非常感謝!
2018-01-17 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

$("li").css('')和$("li").each有什么區(qū)別嗎?

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號