Javascript中暂停功能的实现代码


Posted in Javascript onMarch 04, 2007
<script language="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 + ")",1000); 
} 
/* 
该函数把要暂停的函数放到数组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,1000);//调用暂停函数 
 this.NextStep=function(){ 
  alert("NextStep"); 
 } 
} 
</script>
Javascript 相关文章推荐
Javascript中的数学函数集合
May 08 Javascript
javascript放大镜效果的简单实现
Dec 09 Javascript
jQuery实现监控页面所有ajax请求的方法
Dec 10 Javascript
AngularJs 国际化(I18n/L10n)详解
Sep 01 Javascript
jQuery事件详解
Feb 23 Javascript
JS实现的模仿QQ头像资料卡显示与隐藏效果
Apr 07 Javascript
简单谈谈原生js的math对象
Jun 27 Javascript
vue音乐播放器插件vue-aplayer的配置及其使用实例详解
Jul 10 Javascript
基于vue开发的在线付费课程应用过程
Jan 25 Javascript
jQuery实现表格隔行换色
Sep 01 jQuery
基于node简单实现RSA加解密的方法步骤
Mar 21 Javascript
微信小程序之数据绑定原理解析
Aug 14 Javascript
参考:关于Javascript中实现暂停的几篇文章
Mar 04 #Javascript
插件:检测javascript的内存泄漏
Mar 04 #Javascript
一个不错的应用,用于提交获取文章内容,不推荐用
Mar 03 #Javascript
求得div 下 img的src地址的js代码
Feb 28 #Javascript
求解开jscript.encode代码的asp函数
Feb 28 #Javascript
用正则获取指定路径文件的名称
Feb 27 #Javascript
setTimeout和setInterval的浏览器兼容性分析
Feb 27 #Javascript
You might like
php 数组的一个悲剧?
2011/05/11 PHP
PHP递归实现层级树状展开
2016/04/01 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
JavaScript函数、方法、对象代码
2008/10/29 Javascript
JQuery的Ajax请求实现局部刷新的简单实例
2014/02/11 Javascript
JS提示:Uncaught SyntaxError:Unexpected token ) 错误的解决方法
2016/08/19 Javascript
移动端js触摸事件详解
2016/09/18 Javascript
Javascript仿京东放大镜的效果
2017/03/01 Javascript
jQuery动态添加元素无法触发绑定事件的解决方法分析
2018/01/02 jQuery
微信小程序实现上传图片功能
2018/05/28 Javascript
Vue监听一个数组id是否与另一个数组id相同的方法
2018/09/26 Javascript
vue中的mescroll搜索运用及各种填坑处理
2019/10/30 Javascript
Python程序员鲜为人知但你应该知道的17个问题
2014/06/04 Python
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
linux平台使用Python制作BT种子并获取BT种子信息的方法
2017/01/20 Python
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
2017/04/18 Python
python嵌套字典比较值与取值的实现示例
2017/11/03 Python
解决pycharm 误删掉项目文件的处理方法
2018/10/22 Python
解析Python的缩进规则的使用
2019/01/16 Python
python Gunicorn服务器使用方法详解
2019/07/22 Python
详解numpy.meshgrid()方法使用
2019/08/01 Python
python 爬虫之selenium可视化爬虫的实现
2020/12/04 Python
使用BeautifulSoup4解析XML的方法小结
2020/12/07 Python
美国高端牛仔品牌:Silver Jeans
2019/12/12 全球购物
介绍一下UNIX启动过程
2013/11/14 面试题
大学生求职推荐信
2013/11/27 职场文书
银行求职信个人范文
2013/12/16 职场文书
教育专业自荐书范文
2013/12/17 职场文书
开展批评与自我批评发言材料
2014/05/15 职场文书
违反交通法规检讨书
2014/09/10 职场文书
债务追讨授权委托书范本
2014/10/16 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
家庭贫困证明
2015/06/16 职场文书
拥有这5个特征人,“命”都不会太差
2019/08/16 职场文书
swagger如何返回map字段注释
2021/07/03 Java/Android
Mysql 数据库中的 redo log 和 binlog 写入策略
2022/04/26 MySQL