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 相关文章推荐
基于JQuery的一个简单的鼠标跟随提示效果
Sep 23 Javascript
javascript数组操作(创建、元素删除、数组的拷贝)
Apr 07 Javascript
JavaScript头像上传插件源码分享
Mar 29 Javascript
20分钟成功编写bootstrap响应式页面 就这么简单
May 12 Javascript
js Canvas实现的日历时钟案例分享
Dec 25 Javascript
各种选择框jQuery的选中方法(实例讲解)
Jun 27 jQuery
使用Vue动态生成form表单的实例代码
Apr 26 Javascript
Angular4 组件通讯方法大全(推荐)
Jul 12 Javascript
基于React Native 0.52实现轮播图效果
Aug 25 Javascript
vue实现百度语音合成的实例讲解
Oct 14 Javascript
LayUi数据表格自定义赋值方式
Oct 26 Javascript
Express 配置HTML页面访问的实现
Nov 01 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
最令PHP初学者头痛的十四个问题
2006/07/12 PHP
第三节 定义一个类 [3]
2006/10/09 PHP
PHP中鲜为人知的10个函数
2014/02/28 PHP
用 Composer构建自己的 PHP 框架之构建路由
2014/10/30 PHP
[原创]PHP简单开启curl的方法(测试可行)
2016/01/11 PHP
PHP is_array() 检测变量是否是数组的实现方法
2016/06/13 PHP
PHP7 新特性详细介绍
2016/09/06 PHP
javascript网页关闭时提醒效果脚本
2008/10/22 Javascript
jquery ui resizable bug解决方法
2010/10/26 Javascript
json的前台操作和后台操作实现代码
2012/01/20 Javascript
jquery实现点击消失的代码
2014/03/03 Javascript
jQuery判断元素是否存在的可靠方法
2014/05/06 Javascript
JQuery Tips相关(1)----关于$.Ready()
2014/08/14 Javascript
基于jquery编写分页插件
2016/03/07 Javascript
Javascript的无new构建实例详解
2016/05/15 Javascript
jQuery实现二维码扫描功能
2017/01/09 Javascript
JavaScript数组和对象的复制
2017/03/21 Javascript
关于webpack2和模块打包的新手指南(小结)
2017/08/07 Javascript
使用vuex缓存数据并优化自己的vuex-cache
2018/05/30 Javascript
vue实现引入本地json的方法分析
2018/07/12 Javascript
js+SVG实现动态时钟效果
2018/07/14 Javascript
微信小程序滑动选择器的实现代码
2018/08/10 Javascript
node.js之基础加密算法模块crypto详解
2018/09/11 Javascript
JavaScript canvas绘制折线图
2020/02/18 Javascript
[43:24]2018DOTA2亚洲邀请赛3月29日 小组赛A组 LGD VS Liquid
2018/03/30 DOTA
Python进程间通信之共享内存详解
2017/10/30 Python
几种实用的pythonic语法实例代码
2018/02/24 Python
python脚本之一键移动自定格式文件方法实例
2019/09/02 Python
python安装后的目录在哪里
2020/06/21 Python
Pycharm plot独立窗口显示的操作
2020/12/11 Python
HTML5离线缓存Manifest是什么
2016/03/09 HTML / CSS
HTML5上传文件显示进度的实现代码
2012/08/30 HTML / CSS
美国波西米亚风格精品店:South Moon Under
2019/10/26 全球购物
比赛主持人开场白
2015/05/29 职场文书
解决goland 导入项目后import里的包报红问题
2021/05/06 Golang
Mysql分析设计表主键为何不用uuid
2022/03/31 MySQL