您的位置:首页 > 其它

clearInterval()与setInterval()的使用心得

2015-10-28 20:44 381 查看
阅读插件源码的时候发现一个js写法,(省略了一些代码,结构是这样子的)

function changeImg(_index){
$bannerList.eq(_index).fadeIn(250);
$bannerList.eq(_index).siblings().fadeOut(200);
$focusBubble.find("li").removeClass("current");
$focusBubble.find("li").eq(_index).addClass("current");
clearInterval(_timer);
timer=setInterval(function(){$nextBnt.click()},5000)
}//切换主函数
<span style="white-space:pre"> </span>var timer=setInterval(function(){$nextBnt.click()},5000)
首先用setInterval()设定一个定时器,每隔一段时间调用上面函数,然后再函数里面先用clearInterval()函数清除定时器,

接着再设定一个同样的定时器。一开始觉得这样写多此一举,仔细一想既然作者这么写,肯定有他的理由,然后才明白过来,

clearInterval(_timer);
timer=setInterval(function(){$nextBnt.click()},5000)这两行代码是必须写的不能省略,这是为了确保函数保持5s调用一次才这么写的,因为执行函数需要一定的时间(即使浏览器性能很好,但也要花费一些时间),这样的话当
函数运行多次之后可能就不再是每隔5s调用一次了。

再牛逼的梦想也抵挡不了你傻逼似的坚持,加油!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: