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++;}
為什么寫(xiě)
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也不是代碼串,你可以試試寫(xiě)
var timer=setInterval(’$('#next').click()’,2000)
相關(guān)文章:
1. 我在centos容器里安裝docker,也就是在容器里安裝容器,報(bào)錯(cuò)了?2. docker內(nèi)創(chuàng)建jenkins訪問(wèn)另一個(gè)容器下的服務(wù)器問(wèn)題3. docker-compose中volumes的問(wèn)題4. golang - 用IDE看docker源碼時(shí)的小問(wèn)題5. docker不顯示端口映射呢?6. 在windows下安裝docker Toolbox 啟動(dòng)Docker Quickstart Terminal 失敗!7. javascript - 連續(xù)點(diǎn)擊觸發(fā)mouseleave事件8. mac里的docker如何命令行開(kāi)啟呢?9. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””10. javascript - 最近用echarts做統(tǒng)計(jì)圖時(shí)遇到兩個(gè)問(wèn)題!!

網(wǎng)公網(wǎng)安備