用Javascript实现Sleep暂停功能代码


Posted in Javascript onSeptember 03, 2010
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
function Sleep(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); 
} 
function GoOn(ind) 
{ 
var obj=window.eventList[ind]; 
window.eventList[ind]=null; 
if (obj.NextStep) obj.NextStep(); 
else obj(); 
} 
function Test() 
{ 
alert("sleep"); 
Sleep(this,10000); 
this.NextStep=function() 
{ 
alert("continue"); 
} 
} 
Test(); 
//--> 
</SCRIPT>

下面是别的网友写的代码
<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 相关文章推荐
Prototype Date对象 学习
Jul 12 Javascript
JavaScript 继承详解 第一篇
Aug 30 Javascript
再论Javascript下字符串连接的性能
Mar 05 Javascript
javascript之Partial Application学习
Jan 10 Javascript
JS操作select下拉框动态变动(创建/删除/获取)
Jun 02 Javascript
JS对HTML标签select的获取、添加、删除操作
Oct 17 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
Aug 10 Javascript
js中Number数字数值运算后值不对的解决方法
Feb 28 Javascript
浅谈mint-ui 填坑之路
Nov 06 Javascript
IntelliJ IDEA 安装vue开发插件的方法
Nov 21 Javascript
AngularJS创建一个上传照片的指令实例代码
Feb 24 Javascript
vue中使用codemirror的实例详解
Nov 01 Javascript
javascript 仿QQ滑动菜单效果代码
Sep 03 #Javascript
原生javascript实现图片轮播效果代码
Sep 03 #Javascript
IE6不能修改NAME问题的解决方法
Sep 03 #Javascript
extjs grid设置某列背景颜色和字体颜色的方法
Sep 03 #Javascript
动态加载图片路径 保持JavaScript控件的相对独立性
Sep 03 #Javascript
Dojo 学习要点
Sep 03 #Javascript
jquery.simple.tree插件 更简单,兼容性更好的无限树插件
Sep 03 #Javascript
You might like
初学者入门:细述PHP4的核心Zend
2006/09/05 PHP
PHP自动重命名文件实现方法
2014/11/04 PHP
php简单实现屏蔽指定ip段用户的访问
2015/04/29 PHP
PHP批量去除BOM头内容信息代码
2016/03/11 PHP
PHP对象链式操作实现原理分析
2016/10/09 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
2017/06/02 PHP
PHP封装的XML简单操作类完整实例
2017/11/13 PHP
Array对象方法参考
2006/10/03 Javascript
JS 拼图游戏 面向对象,注释完整。
2009/06/18 Javascript
ASP 过滤数组重复数据函数(加强版)
2010/05/31 Javascript
十个迅速提升JQuery性能让你的JQuery跑得更快
2012/12/10 Javascript
js正则表达式的使用详解
2013/07/09 Javascript
javascript设置连续两次点击按钮时间间隔的方法
2014/10/28 Javascript
JS实现自动阅读单词(有道单词本添加功能)
2016/11/14 Javascript
微信小程序 radio单选框组件详解及实例代码
2017/01/10 Javascript
bootstrap table 数据表格行内修改的实现代码
2017/02/13 Javascript
ES6中module模块化开发实例浅析
2017/04/06 Javascript
浅谈angular.copy() 深拷贝
2017/09/14 Javascript
vue删除html内容的标签样式实例
2018/09/13 Javascript
JavaScript展开操作符(Spread operator)详解
2019/07/20 Javascript
python二叉树的实现实例
2013/11/21 Python
python中pycurl库的用法实例
2014/09/30 Python
python清除字符串里非字母字符的方法
2015/07/02 Python
Python实现统计文本文件字数的方法
2017/05/05 Python
Django中利用filter与simple_tag为前端自定义函数的实现方法
2017/06/15 Python
Python基于回溯法子集树模板实现8皇后问题
2017/09/01 Python
利用python修改json文件的value方法
2018/12/31 Python
python中yield的用法详解——最简单,最清晰的解释
2019/04/04 Python
解决Python对齐文本字符串问题
2019/08/28 Python
jupyter notebook tensorflow打印device信息实例
2020/04/20 Python
苹果美国官方商城:Apple美国
2016/08/24 全球购物
生产内勤岗位职责
2013/12/07 职场文书
社区党的群众路线教育实践活动总结材料
2014/10/31 职场文书
2014年社区工会工作总结
2014/12/18 职场文书
关于战胜挫折的名言警句大全!
2019/07/05 职场文书
Python requests库参数提交的注意事项总结
2021/03/29 Python