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 相关文章推荐
js获得指定控件输入光标的坐标兼容IE,Chrome,火狐等多种主流浏览器
May 21 Javascript
在JavaScript中用getMinutes()方法返回指定的分时刻
Jun 10 Javascript
Bootstrap弹出框(modal)垂直居中的问题及解决方案详解
Jun 12 Javascript
JS实现列表的响应式排版(推荐)
Sep 01 Javascript
JS控制TreeView的结点选择
Nov 11 Javascript
JS实现图片上传预览功能
Nov 21 Javascript
Angular ui-roter 和AngularJS 通过 ocLazyLoad 实现动态(懒)加载模块和依赖
Nov 25 Javascript
node和vue实现商城用户地址模块
Dec 05 Javascript
Vue+Element实现表格编辑、删除、以及新增行的最优方法
May 28 Javascript
前端路由&amp;webpack基础配置详解
Jun 10 Javascript
使用Vue+Django+Ant Design做一个留言评论模块的示例代码
Jun 01 Javascript
如何用threejs实现实时多边形折射
May 07 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实现的在线人员函数库
2008/04/09 PHP
解析php 版获取重定向后的地址(代码)
2013/06/26 PHP
PHP上传文件时自动分配路径的方法
2015/01/09 PHP
PHP输出两个数字中间有多少个回文数的方法
2015/03/23 PHP
PHP简单实现遍历目录下特定文件的方法小结
2017/05/22 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
2017/08/30 PHP
PHP explode()函数用法讲解
2019/02/15 PHP
php使用socket调用http和smtp协议实例小结
2019/07/26 PHP
js 事件小结 表格区别
2007/08/13 Javascript
使用Mootools动态添加Css样式表代码,兼容各浏览器
2011/12/12 Javascript
JS获取页面input控件中所有text控件并追加样式属性
2013/02/25 Javascript
js改变img标签的src属性在IE下没反应的解决方法
2013/07/23 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
使用JS获取当前地理位置方法汇总
2014/12/18 Javascript
javascript实现抽奖程序的简单实例
2016/06/07 Javascript
Jquery中attr与prop的区别详解
2017/05/27 jQuery
在Layui中实现开关按钮的效果实例
2019/09/29 Javascript
JS控制GIF图片的停止与显示
2019/10/24 Javascript
利用node.js开发cli的完整步骤
2020/12/29 Javascript
Python统计列表中的重复项出现的次数的方法
2014/08/18 Python
python实现支持目录FTP上传下载文件的方法
2015/06/03 Python
Python图算法实例分析
2016/08/13 Python
django创建自定义模板处理器的实例详解
2017/08/14 Python
Python reduce()函数的用法小结
2017/11/15 Python
Python wxpython模块响应鼠标拖动事件操作示例
2018/08/23 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
Django之使用celery和NGINX生成静态页面实现性能优化
2019/10/08 Python
Python中常见的数制转换有哪些
2020/05/27 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
2020/08/07 Python
无需压缩软件,用python帮你操作压缩包
2020/08/17 Python
介绍一下RMI的基本概念
2016/12/17 面试题
2014年大学生党员自我评议
2014/09/22 职场文书
反对四风自我剖析材料
2014/10/07 职场文书
2014年资料员工作总结
2014/11/18 职场文书
仓管员岗位职责范本
2015/04/01 职场文书
生鲜超市—未来中国最具有潜力零售业态
2019/08/02 职场文书