HTML清除计时器的语句,如何知道计时器是否被清除或在javascript中超时?
如果您正在寻找更正式的东西,您可以构建封装setTimeout / clearTimeout功能的javascript类.
这样的类可能看起来像这样:
/** class Timer **/
var Timer = function(delayMs,callbackFunc) {
this.delayMs = delayMs;
this.callbackFunc = callbackFunc;
this.timerState = 'new';
}
Timer.prototype.start = function() {
if( this.tmr ) return;
var self = this;
this.timerState = 'running';
this.tmr = setTimeout(function() { self._handleTmr(); },this.delayMs);
}
Timer.prototype.cancel = function() {
if( ! this.tmr ) return;
clearTimeout(this.tmr);
this.tmr = null;
this.timerState = 'canceled';
}
Timer.prototype._handleTmr = function() {
this.tmr = null;
this.timerState = 'completed';
this.callbackFunc();
}
我还添加了一个timerState属性,可以让您轻松确定计时器是“已完成”还是“已取消”.
你会像这样使用它:
var t = new Timer(500,function() {
alert('timer completed');
});
t.start();
// do whatever...
// now cancel the timer if it hasn't completed yet.
t.cancel();
// maybe you do some other stuff...
// then check the timerState,and act accordingly.
//
if( t.timerState == 'canceled' ) {
alert("the timer was canceled!");
} else {
alert("the timer completed uneventfully.");
}
如果需要,您可以扩展相同的基本思想以包含其他功能(例如,重复计时器,开始/停止/恢复等)
HTML清除计时器的语句,如何知道计时器是否被清除或在javascript中超时?相关推荐
- 在一起计时器_如何在纯JAVASCRIPT中构建倒数计时器
您不一定需要jQuery为您的站点添加倒数计时器.只需几行JavaScript即可创建一个可自定义的计时器,该计时器可计入预定义的日期和时间.您可以将计时器嵌入到多种页面中,例如即将推出和维护页面,电 ...
- java计时器脚本_在倒数计时器脚本中跳过很多秒
我做了一个倒数计时器 . 它使用日期函数来获取当前时间 . 然后它将该时间存储在另一个var中 . 这个新的var会改变小时/分钟/秒,因此格式应该与日期函数相同 . 然后我将这两个变量转换为自计数以 ...
- this调用语句必须是构造函数中的第一个可执行语句_谈谈JavaScript中的函数构造式和new关键字...
您是否曾困惑于 Javascript 中的new关键字呢?是否曾想理解关于 function 和 constructor 的区别是什么呢? 大多数 Javascript 的新开发者不太想要使用new关 ...
- 在JavaScript中使用示例继续语句
JavaScript继续声明 (JavaScript continue statement) continue is a keyword in JavaScript, it is used with ...
- JavaScript中的运算符和语句
一.JavaScript的运算符 a.基本的算术运算符(+.-.*./.%) -.*./.%运算符会在必要的时候将操作数转换为数字,无法转换成数字的操作数将会转换成NaN,相应的运算结果也是NaN. ...
- php页面添加js判断语句,JavaScript中if条件语句怎么使用
JavaScript中的if可实现条件分支也就是条件语句,所以,接下来的这篇文章就来给大家介绍关于JavaScript中if条件语句的用法,下面我们来看具体内容. 我们先来看看条件分支(if语句)语句 ...
- JavaScript中语句与函数的执行辨析
文章出自个人博客https://knightyun.github.io/2018/05/23/js-anonymous-function,转载请申明. Javascript代码中,语句和函数以及匿名函 ...
- Javascript中的条件语句和循环语句
Javascript条件语句有以下几种: 单项条件结构 (if条件语句) 双向条件结构 (if...else条件语句) 多项条件结构 (switch条件语句) If条件语句的语法如下: if (exp ...
- 如何清除计算机搜索框内的搜索历史记录,如何清除搜索框中的网站访问历史记录...
本文教你如何防止在网页浏览器地址栏中输入内容时显示匹配结果.记住,Mac 和 iPhone 平台上的 Safari 都不会保留表单数据,所以如果使用 Safari,就不需要担心这个问题.如果你想删除掉 ...
- 如何清除360网站服务器缓存,360安全浏览器怎样清除缓存360浏览器缓存清理
<360安全浏览器怎样清除缓存360浏览器缓存清理>由会员分享,可在线阅读,更多相关<360安全浏览器怎样清除缓存360浏览器缓存清理(8页珍藏版)>请在人人文库网上搜索. 1 ...
最新文章
- OOALV 中DATA_CHANGED_FINISHED调用刷新弹出排序窗口解决方案
- nginx php7提速,nginx+php7-fpm 性能提升几倍跟踪实践结果并优化
- Kapacitor安装及使用
- python语言的开发者_写给.NET开发者的Python教程(一):引言
- lintcode :reverse integer 颠倒整数
- UVA 10602 - Editor Nottoobad
- HFT-CNN:层级多标签分类,让你的模型多学习几次
- 知了课堂 flask 笔记总结
- Sub-center ArcFace
- 外国人聊天常用的缩写(转)
- 这个牛逼的在线项目任务管理工具,终于开源了!
- 水泥cement或英语caement水泥
- 因特网在线聊天协议(IRCP/IRC)--网络大典
- linux版本有密钥吗,windows7密钥是什么意思又一Linux版本登陆微软Win10
- 关于加装新的SSD后,机械盘不识别(不显示)的问题解决
- Java代码审计--checklist
- 计算机与网络 文献,计算机与网络专著参考文献 计算机与网络参考文献怎么写...
- ImportError: cannot import name ‘_maybe_get_pandas_wrapper_freq‘ from ‘statsmodels.tsa.filters._util
- 计算机南方电网试题,南方电网考试真题
- 用C++自制一个病毒(1)
热门文章
- 高等代数期末考试题库及答案_高等代数3学时试题题目及答案,课程2021最新期末考试题库,章节测验答案...
- ed是什么梗_《JOJO的奇妙冒险》那些梗
- celery cluser redis_Celery配置Redis Sentinel做高可用
- EHIGH恒高:大话UWB技术之蓝牙定位的烦恼
- Android已有的原生Camera框架中加入自己的API的实现方案。
- 四十三 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理...
- 自定义View在android2.3.3手机上正常运行 在android4.2.2手机上报空指针
- MapControl与PageLayoutControl联动
- treeview实例
- 查询 加载时间过长添加提示信息