常用代码之八:setTimeout 和 clearTimeout。
1.先写一个错误的例子:
function DealSomething() {
//write some code
window.setTimeout(function () {
alert("已经等待超过10分钟,自动关闭页面。");
}, 600000);
}
这个例子的行为:不管是否处理完,超过10分钟后,都弹出这个alert框来。
2.再看另一个错误的例子,这次使用了clearTimeout函数来清除setTimeout。
function DealSomething() {
//write some code
var Timer =window.setTimeout(function () {
alert("已经等待超过10分钟,自动关闭页面。");
}, 600000);
clearTimeout(Timer);
}
其中Timer是setTimeout函数的ID标识,每次调用setTimeout函数都会产生一个唯一的ID,与操作系统中的进程ID相似, 可以通过clearTimeout函数(此函数的参数接收一个setTimeout返回的ID) 暂停setTimeout函数还未执行的代码。
但这个例子的行为是:setTimeout函数永远不会被执行,因为如果还没有执行setTimeout函数中的代码,就调用了clearTimeout函数,那么就不会执行setTimeout函数中的代码了。
3.最后是一个正确的例子。
var Timer
function DealSomething() {
//write some code
Timer =window.setTimeout(function () {
alert("已经等待超过10分钟,自动关闭页面。");
}, 600000);
}
function StopDeal() {
clearTimeout(Timer);
}
这样,先调用DealSomething(), 因为它使用了函数外部的变量Timer, 现在这个函数是一个闭包了,在10分钟内调用StopDeal()时,就能达到清除setTimeout函数的作用,等过了10分钟时才不会出alert提示了;如果10分钟内不调用StopDeal()函数,那么就会按期执行setTimeout函数了。
参考链接:http://www.dreamdu.com/javascript/window.clearTimeout/
常用代码之八:setTimeout 和 clearTimeout。的更多相关文章
- 结合setTimeout和clearTimeout,实现“返回顶部”的功能
结合setTimeout和clearTimeout,当页面停止滚动时,“返回顶部”按钮淡隐淡出.点击“返回顶部”页面以动画形式返回顶部.完美兼容ie6-11,firefox,chrome等. html ...
- 利用setTimeOut 和clearTimeOut 方法控制写一个 滑动导航显示不同信息的效果
效果如图鼠标滑动导航 下边显示不同效果 html代码和css格式代码 <body><div id="tab" class="tab"> ...
- javascript常用代码大全
http://caibaojian.com/288.html 原文链接 jquery选中radio //如果之前有选中的,则把选中radio取消掉 $("#tj_cat .pro_ca ...
- 关于javascript中setTimeout()和clearTimeout()的疑惑。
由于在w3school中学习javascript时,当学到setTimeout()和clearTimeout()方法时.根据它所提供的例子(下面的代码转自w3cschool)—计数程序,发现当你不停的 ...
- 单元测试系列之十:Sonar 常用代码规则整理(二)
摘要:帮助公司部署了一套sonar平台,经过一段时间运行,发现有一些问题出现频率很高,因此有必要将这些问题进行整理总结和分析,避免再次出现类似问题. 作者原创技术文章,转载请注明出处 ======== ...
- 单元测试系列之九:Sonar 常用代码规则整理(一)
更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 摘要:公司部署了一套sonar,经过一段时间运行,发现有一些问题出现频率很高,因此有必要将这些问题进行整理总结和分 ...
- 程序员必须知道的HTML常用代码有哪些?
HTML即超文本标记语言,是目前应用最为广泛的语言之一,是组成一个网页的主要语言.在现今这个HTML5华丽丽地占领了整个互联网的时候,如果想要通过网页抓住浏览者的眼球光靠因循守旧是不行的,程序猿们需要 ...
- JS window对象 取消计时器clearTimeout() setTimeout()和clearTimeout()一起使用,停止计时器。 语法: clearTimeout(id_of_setT
取消计时器clearTimeout() setTimeout()和clearTimeout()一起使用,停止计时器. 语法: clearTimeout(id_of_setTimeout) 参数说明: ...
- XSS(跨站脚本攻击) - 常用代码大全
XSS(跨站脚本攻击) - 常用代码大全-版本一 1'"()&%<acx><ScRiPt >prompt(915149)</ScRiPt> < ...
随机推荐
- vsphere性能
vNUMA介绍 http://virtualbarker.com/ vSphere VMware Performance With every release of vSphere the overh ...
- Spring学习笔记四:SpringAOP的使用
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6776247.html 一:AOP基础概念 (1)通知(增强)Advice 通知,其实就是我们从众多类中提取出 ...
- OpenERP 7中 openerp-server.conf 的解释
服务器启动配置 – 通用项 程序代码: [选择] # Admin password for creating, restoring and backing up databases admin_pas ...
- 缓慢变化维 (Slowly Changing Dimension) 常见的三种类型及原型设计(转)
开篇介绍 在从 OLTP 业务数据库向 DW 数据仓库抽取数据的过程中,特别是第一次导入之后的每一次增量抽取往往会遇到这样的问题:业务数据库中的一些数据发生了更改,到底要不要将这些变化也反映到数据仓库 ...
- Java通过wait()和notifyAll()方法实现线程间的通信
Java代码(使用了2个内部类): package Threads; import java.util.LinkedList; /** * Created by Frank */ public cla ...
- VBA遍历数组的2种方式
1.情景展示 VBA编程,如何对数组进行遍历? 2.解决方案 方式一:使用for循环 Sub 遍历数组1() '声明一个变量 Dim Arr As Variant '声明一个数字变量 Dim i ...
- soapUI pro :INFO:Error getting response for []; javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
need to configure two for the https address: Step 1 export the certificate from the IE settings opti ...
- Axure 富文本框
百度网盘:http://pan.baidu.com/s/1c1ZjUPq
- C#几个小知识点
一.float数据类型 小数在C#中需要用浮点型表示,浮点值就是.后面的小数点.C#语言中有两种小数类型,分别为32位单精度浮点型(float) 和64位双精度浮点型(double).其中精度指的是小 ...
- 输出控制台信息到日志 并 通过cronolog对tomcat进行日志切分
windows下tomcat默认并不会把控制台输出的信息都记录进日志文件.但是在生产环境中,出现问题时,控制台的日志输出是无法查据的,因此需要将日志记录下来. 解决方法: 输出日志到文件 修改tomc ...