javascript - 原生JS和jQuety關(guān)于設(shè)置圖片輪播定時(shí)器問(wèn)題
問(wèn)題描述
關(guān)于圖片輪播,設(shè)置自動(dòng)播放問(wèn)題:如果使用原生JS代碼,當(dāng)前我了解兩種方法,第一種:
function next(){ 這里是代碼,比如index++;}var timer=setInterval(next, 2000);
第二種(其中oBtnNext是指獲取到的某個(gè)按鈕):
oBtnNext.onclick=function(){ 這里是代碼,比如index++;} var timer=setInterval(oBtnNext.onclick,2000);
重點(diǎn)來(lái)了,問(wèn)題是,如果用jQuery($('#next')等價(jià)于上面中的oBtnNext)
$('#next').click(function(){ 這里是代碼,比如index++;}
為什么寫
var timer=setInterval($('#next').click,2000)
或
var timer=setInterval($('#next').click(),2000)
都不可以,但是
var timer=setInterval(function () { $('#next').click()},2000);
卻可以。
問(wèn)題解答
回答1:你還是沒(méi)理解setInterval的用法setInterval(code,millisec[,'lang'])其中的code是要調(diào)用的函數(shù)或要執(zhí)行的代碼串。使用代碼串的時(shí)候,要加上“”來(lái)把方法變成字符串..(詳見(jiàn)w3school)
oBtnNext.onclick=function(){} var timer=setInterval(oBtnNext.onclick,2000);
這里好用是因?yàn)閛BtnNext.onclick是一個(gè)function
var timer=setInterval($('#next').click,2000)
或
var timer=setInterval($('#next').click(),2000)
都不好使,因?yàn)檫@倆既不是function也不是代碼串,你可以試試寫
var timer=setInterval(’$('#next').click()’,2000)
相關(guān)文章:
1. docker不顯示端口映射呢?2. docker images顯示的鏡像過(guò)多,狗眼被亮瞎了,怎么辦?3. android - viewpager問(wèn)題PagerTabStrip樣式4. javascript - vue-router怎么不能實(shí)現(xiàn)跳轉(zhuǎn)呢5. docker start -a dockername 老是卡住,什么情況?6. javascript - CSS圖片輪播顯示問(wèn)題7. docker鏡像push報(bào)錯(cuò)8. python 字符串匹配問(wèn)題9. dockerfile - 我用docker build的時(shí)候出現(xiàn)下邊問(wèn)題 麻煩幫我看一下10. javascript - 這里的這個(gè)函數(shù)是干嘛用的?
