关于图片轮播,设置自动播放问题:
如果使用原生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);
却可以。
漂亮男人2017-07-05 11:00:00
你还是没理解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)