關于addClass() 里面function的參數問題
$("div").addClass(function(index,className) {
? ? ? ? ? ? if(-1 !== className.indexOf('imooc')){
? ? ? ? ? ? ????$(this).addClass('imoocClass')
? ? ? ? ? ? }
});
function的參數:index和className好像后面都沒有出現,那還要參數干嘛?
還有這句className.indexOf('imooc')
className都不是一個對象,怎么可以怎么用?
不是應該先定義變量么? className=$('div')[i].className 然后再用for循環遍歷一下么?
2016-08-31
$("div").addClass(function(index,className)這句話里面的index只是索引,根據前面的div來取值0,1,2....className是div以前的類名。w3school上面有講到的。至于indexOf,w3school里面的JavaScript部分講到可以str.indexOf("world")來判斷world是在str字符串出現的位置。
2017-11-14
className是js里的class屬性名,是專有的,并不是封裝的。
2016-09-11
addClass(function(index,className){
?});其中的兩個參數index,className,前者表示索引,后者是類名,但是兩個都是形參(個人理解)你可以換成i,classN傳進去一樣有用,應該是jq內部封裝好的,一定要傳兩個參數進去,不然就會報錯。?if(-1 !== className.indexOf('imooc'))還有這句,這里的className和function(index,className)第二個參數對應,內部是有封裝的,把你傳進來的參數className定義成對象,所以可以直接拿來用了。新手理解,歡迎指正交流
2016-08-27
后面用到了className了,? if(-1 !== className.indexOf('imooc'))這不就用到了className啦?而且要想用className,必須在前面有index參數,如果沒有會默認是index,而不是className。className值得是div當前的類的名稱。
indexof這個方法在字符串就可以使用的,