javascript - 原生JS和jQuety關于設置圖片輪播定時器問題
問題描述
關于圖片輪播,設置自動播放問題:如果使用原生JS代碼,當前我了解兩種方法,第一種:
function next(){ 這里是代碼,比如index++;}var timer=setInterval(next, 2000);
第二種(其中oBtnNext是指獲取到的某個按鈕):
oBtnNext.onclick=function(){ 這里是代碼,比如index++;} var timer=setInterval(oBtnNext.onclick,2000);
重點來了,問題是,如果用jQuery($('#next')等價于上面中的oBtnNext)
$('#next').click(function(){ 這里是代碼,比如index++;}
為什么寫
var timer=setInterval($('#next').click,2000)
或
var timer=setInterval($('#next').click(),2000)
都不可以,但是
var timer=setInterval(function () { $('#next').click()},2000);
卻可以。
問題解答
回答1:你還是沒理解setInterval的用法setInterval(code,millisec[,'lang'])其中的code是要調用的函數或要執行的代碼串。使用代碼串的時候,要加上“”來把方法變成字符串..(詳見w3school)
oBtnNext.onclick=function(){} var timer=setInterval(oBtnNext.onclick,2000);
這里好用是因為oBtnNext.onclick是一個function
var timer=setInterval($('#next').click,2000)
或
var timer=setInterval($('#next').click(),2000)
都不好使,因為這倆既不是function也不是代碼串,你可以試試寫
var timer=setInterval(’$('#next').click()’,2000)
相關文章:
1. javascript - Vue.js的ElementUI庫中,如何主動觸發checkbox組件的change事件?2. javascript - webpack 打包 reactjs項目 css 分離3. javascript - 關于js高級程序中的問題4. javascript - 關于微信掃一掃的技術問題5. javascript - 如何清除向可編輯的(contenteditable)元素里粘貼的文本的標簽和樣式?6. javascript - 請教移動端從詳情頁返回到列表頁原來位置的問題?7. javascript - vuex中子組件無法調用公共狀態8. javascript - (_a = [""], _a.raw = [""],....); js一個小括號的是什么意思?9. javascript - js正則替換日期格式問題10. javascript - ios上fixed定位問題,定位在底部的按鈕不顯示了,但是又可以點擊到,換了一個類名就可以顯示了,但是設置的字體大小卻失效了
