JavaScript定时器和优化的取消定时器方法


Posted in Javascript onJuly 03, 2015

通常用的方法:
启动定时器:

window.setInterval(Method,Time)   

Method是定时调用的js方法

Time是间隔时间,单位是毫秒
取消定时器:

clearInterval(Method); 

那么问题来了。用 clearInterval(timerid);来清除,往往不能马上停止,用什么方法比较好解决?
优化方案如下

var timeout = false; //启动及关闭按钮  

function time()  

{  

  if(timeout) return;  

  Method();  

  setTimeout(time,100); //time是指本身,延时递归调用自己,100为间隔调用时间,单位毫秒  

} 

总结

一般不用setInterval,而用setTimeout的延时递归来代替interval。
setInterval会产生回调堆积,特别是时间很短的时候。 

Javascript 相关文章推荐
正则表达式语法
Oct 09 Javascript
JavaScript词法作用域与调用对象深入理解
Nov 29 Javascript
基于JavaScript实现继承机制之调用call()与apply()的方法详解
May 07 Javascript
JavaScript操作URL的相关内容集锦
Oct 29 Javascript
Html5+jQuery+CSS制作相册小记录
Dec 30 Javascript
vue实现动态数据绑定
Apr 28 Javascript
浅谈Angular HttpClient简单入门
May 04 Javascript
如何阻止小程序遮罩层下方图层滚动
Sep 05 Javascript
uni app仿微信顶部导航条功能
Sep 17 Javascript
基于JavaScript或jQuery实现网站夜间/高亮模式
May 30 jQuery
JavaScript中的函数式编程详解
Aug 22 Javascript
区分vue-router的hash和history模式
Oct 03 Javascript
Javascript中的作用域和上下文深入理解
Jul 03 #Javascript
JavaScript访问字符串中单个字符的两种方法
Jul 03 #Javascript
JavaScript中解析JSON数据的三种方法
Jul 03 #Javascript
一张Web前端的思维导图分享
Jul 03 #Javascript
JavaScript中的对象与JSON
Jul 03 #Javascript
javascript生成大小写字母
Jul 03 #Javascript
jQuery切换所有复选框选中状态的方法
Jul 02 #Javascript
You might like
thinkphp 一个页面使用2次分页的实现方法
2013/07/15 PHP
PHP 实现缩略图
2021/03/09 PHP
javascript 类定义的4种方法
2009/09/12 Javascript
js css样式操作代码(批量操作)
2009/10/09 Javascript
js中设置元素class的三种方法小结
2011/08/28 Javascript
javascript学习笔记(十七) 检测浏览器插件代码
2012/06/20 Javascript
document.all的一个比较完整的总结及案例
2013/01/31 Javascript
js 定时器setTimeout无法调用局部变量的解决办法
2013/11/28 Javascript
浅析js中的浮点型运算问题
2014/01/06 Javascript
Javscript调用iframe框架页面中函数的方法
2014/11/01 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
javascript自动生成包含数字与字符的随机字符串
2015/02/09 Javascript
JQuery 设置checkbox值二次无效的解决方法
2016/07/22 Javascript
轮播图组件js代码
2016/08/08 Javascript
关于javascript获取内联样式与嵌入式样式的实例
2017/06/01 Javascript
Bootstrap Table使用整理(三)
2017/06/09 Javascript
解析Vue 2.5的Diff算法
2017/11/28 Javascript
解决vue-cli3 使用子目录部署问题
2018/07/19 Javascript
Vue父子组件双向绑定传值的实现方法
2018/07/31 Javascript
浅谈Layui的eleTree树式选择器使用方法
2019/09/25 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
JS实现随机点名器
2020/04/12 Javascript
Java及python正则表达式详解
2017/12/27 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
Python实现获取邮箱内容并解析的方法示例
2018/06/16 Python
Python实现数据可视化看如何监控你的爬虫状态【推荐】
2018/08/10 Python
python实现windows壁纸定期更换功能
2019/01/21 Python
python字典嵌套字典的情况下找到某个key的value详解
2019/07/10 Python
学习Django知识点分享
2019/09/11 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
2020/03/23 Python
在Windows上安装和配置 Jupyter Lab 作为桌面级应用程序教程
2020/04/22 Python
软件测试专业推荐信
2014/09/18 职场文书
党员对照检查材料
2014/09/22 职场文书
小学六一主持词开场白
2015/05/28 职场文书
Python机器学习之PCA降维算法详解
2021/05/19 Python
python开发的自动化运维工具ansible详解
2021/08/07 Python