您的位置:首页技术文章
文章详情页

javascript - 原生JS和jQuety关于设置图片轮播定时器问题

【字号: 日期:2023-03-02 10:25:39浏览:22作者:猪猪

问题描述

关于图片轮播,设置自动播放问题:如果使用原生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)

标签: JavaScript
相关文章: