這個(gè)函數(shù)的問題
$('div').addClass(function(index,className){
????if(-1 !== className.indexOf('imooc')){
??????????????? //this指向匹配元素集合中的當(dāng)前元素
??????????????? $(this).addClass('imoocClass')
??????????? }
})
這里indexOf代表的是imooc首次出現(xiàn)的位置!那么其中形參index? className是什么意思?還有className.indexOf()這里面的className是指$('div')這個(gè)對象集中的所有className的值的集合嗎?? 注釋中還說this指當(dāng)前元素,我的理解是第一次出現(xiàn)imooc的元素,同時(shí)給這個(gè)元素添加一個(gè)類名? 可是效果為什么會有兩個(gè)背景色為紅色的盒子?
2017-09-19
選擇器$('div')是獲取到所有div標(biāo)簽對象,然后對每個(gè)標(biāo)簽對象執(zhí)行.addClass(function(index,className){……}),也就是查看每個(gè)div標(biāo)簽的className是否包含'imooc',如果包含,就再為這個(gè)標(biāo)簽增加一個(gè)值為'imoocClass'的新className。$(this)在這里是當(dāng)前正在查看的div標(biāo)簽。
2017-09-12
? if(-1 !== className.indexOf('imooc'))意思是找到class名中有 ?imooc的,均給該元素添加新類 imoocClass,
并不是第一imooc出現(xiàn) ?而是所有含有imooc。如果出現(xiàn)兩個(gè) ,說明你的html中有兩個(gè)元素均有imooc的class名