JS实现程序暂停与继续功能代码解读


Posted in Javascript onOctober 10, 2013

下面代码用JS实现了程序的暂停与继续

<script type="text/javascript"> 
/*Javascript中暂停功能的实现 
Javascript本身没有暂停功能(sleep不能使用)同时 vbscript也不能使用doEvents,故编写此函数实现此功能。 
javascript作为弱对象语言,一个函数也可以作为一个对象使用。 
比如: 
function Test(){ 
alert("hellow"); 
this.NextStep=function(){ 
alert("NextStep"); 
} 
} 
我们可以这样调用 var myTest=new Test();myTest.NextStep(); 
我们做暂停的时候可以吧一个函数分为两部分,暂停操作前的不变,把要在暂停后执行的代码放在this.NextStep中。 
为了控制暂停和继续,我们需要编写两个函数来分别实现暂停和继续功能。 
暂停函数如下: 
*/ 
function Pause(obj,iMinSecond){ 
if (window.eventList==null) window.eventList=new Array(); 
var ind=-1; 
for (var i=0;i<window.eventList.length;i++){ 
if (window.eventList[i]==null) { 
window.eventList[i]=obj; 
ind=i; 
break; 
} 
} 
if (ind==-1){ 
ind=window.eventList.length; 
window.eventList[ind]=obj; 
} 
setTimeout("GoOn(" + ind + ")",iMinSecond); 
} 
/* 
该函数把要暂停的函数放到数组window.eventList里,同时通过setTimeout来调用继续函数。 

继续函数如下: 
*/ 

function GoOn(ind){ 
var obj=window.eventList[ind]; 
window.eventList[ind]=null; 
if (obj.NextStep) obj.NextStep(); 
else obj(); 
} 
/* 
该函数调用被暂停的函数的NextStep方法,如果没有这个方法则重新调用该函数。 

函数编写完毕,我们可以作如下册是: 
*/ 
function Test(){ 
alert("hellow"); 
Pause(this,3000);//调用暂停函数 

this.NextStep=function(){ 
alert("NextStep"); 
} 
} 
</script>
Javascript 相关文章推荐
一段多浏览器的&quot;复制到剪贴板&quot;javascript代码
Mar 27 Javascript
jQuery + Flex 通过拖拽方式动态改变图片的代码
Aug 03 Javascript
解决JS浮点数运算出现Bug的方法
Mar 12 Javascript
JS Replace 全部替换字符的用法小结
Dec 24 Javascript
JS获取几种URL地址的方法小结
Feb 26 Javascript
BootStrap智能表单实战系列(六)表单编辑页面的数据绑定
Jun 13 Javascript
JavaScript表单焦点自动切换代码
Jul 24 Javascript
jquery 动态合并单元格的实现方法
Aug 26 Javascript
浅谈bootstrap使用中的一些问题以及解决过程
Oct 18 Javascript
jQuery Easyui 下拉树组件combotree
Dec 16 Javascript
完美的js图片轮换效果
Feb 05 Javascript
vue中的数据绑定原理的实现
Jul 02 Javascript
js切换光标示例代码
Oct 10 #Javascript
jquery获取div距离窗口和父级dv的距离示例
Oct 10 #Javascript
jquery中常用的SET和GET$(”#msg”).html循环介绍
Oct 09 #Javascript
JavaScript动态创建div属性和样式示例代码
Oct 09 #Javascript
javascript中的document.open()方法使用介绍
Oct 09 #Javascript
js控制页面控件隐藏显示的两种方法介绍
Oct 09 #Javascript
js onload事件不起作用示例分析
Oct 09 #Javascript
You might like
JAVA/JSP学习系列之二
2006/10/09 PHP
一个可查询所有表的“通用”查询分页类
2006/10/09 PHP
PHP提交表单失败后如何保留已经填写的信息
2014/06/20 PHP
Fedora下安装php Redis扩展笔记
2014/09/03 PHP
PHP图像处理类库MagickWand用法实例分析
2015/05/21 PHP
Yii2 rbac权限控制操作步骤实例教程
2016/04/29 PHP
php版微信开发Token验证失败或请求URL超时问题的解决方法
2016/09/23 PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
2019/04/17 PHP
php实现推荐功能的简单实例
2019/09/29 PHP
javascript jQuery插件练习
2008/12/24 Javascript
js 操作css实现代码
2009/06/11 Javascript
JS实现点击颜色块切换指定区域背景颜色的方法
2015/02/25 Javascript
Adapter适配器模式在JavaScript设计模式编程中的运用分析
2016/05/18 Javascript
带有定位当前位置的百度地图前端web api实例代码
2016/06/21 Javascript
JavaScript 计算笛卡尔积实例详解
2016/12/02 Javascript
微信小程序 页面跳转和数据传递实例详解
2017/01/19 Javascript
bootstrap table实现单击单元格可编辑功能
2017/03/28 Javascript
vue ssr 指南详读
2018/06/29 Javascript
在Bootstrap开发框架中使用dataTable直接录入表格行数据的方法
2018/10/25 Javascript
[04:31]2016国际邀请赛中国区预选赛妖精采访
2016/06/27 DOTA
python求素数示例分享
2014/02/16 Python
Python实现批量读取word中表格信息的方法
2015/07/30 Python
Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
2016/06/14 Python
使用Python抓取豆瓣影评数据的方法
2018/10/17 Python
使用python将请求的requests headers参数格式化方法
2019/01/02 Python
python在openstreetmap地图上绘制路线图的实现
2019/07/11 Python
pandas 如何分割字符的实现方法
2019/07/29 Python
CSS3 简单又实用的5个属性
2010/03/04 HTML / CSS
电话销售经理岗位职责
2013/12/07 职场文书
满月酒主持词
2014/03/27 职场文书
大队干部竞选演讲稿
2014/04/28 职场文书
反洗钱宣传活动总结
2014/08/26 职场文书
基层组织建设年活动总结
2015/05/09 职场文书
学校工会工作总结2015
2015/05/19 职场文书
Mysql事务索引知识汇总
2022/03/17 MySQL
【海涛教你打DOTA】黑鸟第一视角解说
2022/04/01 DOTA