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 相关文章推荐
一段多浏览器的"复制到剪贴板"javascript代码
Mar 27 Javascript
JavaScript 保存数组到Cookie的代码
Apr 14 Javascript
javascript 基础篇3 类,回调函数,内置对象,事件处理
Mar 14 Javascript
基于jQuery实现图片的前进与后退功能
Apr 24 Javascript
基于zepto的移动端轻量级日期插件--date_picker
Mar 04 Javascript
jQuery中text() val()和html()的区别实例详解
Jun 28 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
Mar 01 Javascript
jQuery查找和过滤_动力节点节点Java学院整理
Jul 04 jQuery
深入浅析Vue.js 中的 v-for 列表渲染指令
Nov 19 Javascript
GOJS+VUE实现流程图效果
Dec 01 Javascript
微信小程序之事件交互操作实例分析
Dec 03 Javascript
vue-router路由懒加载及实现的3种方式
Feb 28 Vue.js
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
如何用C语言编写PHP扩展的详解
2013/06/13 PHP
PHP中HTML标签过滤技巧
2014/01/07 PHP
destoon后台网站设置变成空白的解决方法
2014/06/21 PHP
PHP 反射(Reflection)使用实例
2015/05/12 PHP
php结合正则批量抓取网页中邮箱地址
2015/05/19 PHP
php如何获取文件的扩展名
2015/10/28 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
2016/03/21 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
javascript最常用与实用的创建类的代码
2010/08/12 Javascript
JavaScript 模拟类机制及私有变量的方法及思路
2013/07/10 Javascript
jquery提交form表单简单示例分享
2014/03/03 Javascript
angular中使用路由和$location切换视图
2015/01/23 Javascript
TypeError document.getElementById(...) is null错误原因
2015/05/18 Javascript
浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法
2016/11/29 Javascript
angularjs实现多张图片上传并预览功能
2017/02/24 Javascript
jQuery EasyUI 选项卡面板tabs的使用实例讲解
2017/12/25 jQuery
Canvas实现微信红包照片效果
2018/08/21 Javascript
基于jquery ajax的多文件上传进度条过程解析
2019/09/11 jQuery
js实现简单的秒表
2020/01/16 Javascript
如何基于filter实现网站整体变灰功能
2020/04/17 Javascript
用Angular实现一个扫雷的游戏示例
2020/05/15 Javascript
vue Element左侧无限级菜单实现
2020/06/10 Javascript
JS实现京东商品分类侧边栏
2020/12/11 Javascript
[02:20]DOTA2亚洲邀请赛 IG战队出场宣传片
2015/02/07 DOTA
Python魔法方法功能与用法简介
2019/04/04 Python
Python 异常的捕获、异常的传递与主动抛出异常操作示例
2019/09/23 Python
Python利用逻辑回归模型解决MNIST手写数字识别问题详解
2020/01/14 Python
Python web如何在IIS发布应用过程解析
2020/05/27 Python
世界上最受欢迎的钓鱼诱饵:Rapala
2019/05/02 全球购物
公司营业员的工作总结自我评价
2013/10/05 职场文书
科长竞争上岗演讲稿
2014/05/12 职场文书
单位一把手群众路线四风问题整改措施
2014/09/25 职场文书
2014年设计师工作总结
2014/11/25 职场文书
Vue实现动态查询规则生成组件
2021/05/27 Vue.js
Java内存模型之happens-before概念详解
2021/06/13 Java/Android
Android中View.post和Handler.post的关系
2022/06/05 Java/Android