用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 相关文章推荐
js类型检查实现代码
Oct 29 Javascript
使用jquery中height()方法获取各种高度大全
Apr 02 Javascript
JavaScript的jQuery库中ready方法的学习教程
Aug 14 Javascript
jquery调整表格行tr上下顺序实例讲解
Jan 09 Javascript
BootStrap中的table实现数据填充与分页应用小结
May 26 Javascript
JQuery动态添加Select的Option元素实现方法
Aug 29 Javascript
详解10分钟学会vue滚动行为
Sep 21 Javascript
JS 数组随机洗牌的实例代码
Sep 12 Javascript
Vue 解决多级动态面包屑导航的问题
Nov 04 Javascript
js prototype深入理解及应用实例分析
Nov 25 Javascript
Vue分页效果与购物车功能
Dec 13 Javascript
Vue设置长时间未操作登录自动到期返回登录页
Jan 22 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
script标签的 charset 属性使用说明
2010/12/04 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
jquery自定义函数的多种方法
2014/01/09 Javascript
javascript实现当前页导航激活的方法
2015/02/27 Javascript
JavaScript中常见获取元素的方法汇总
2015/03/04 Javascript
Javascript 正则表达式实现为数字添加千位分隔符
2015/03/10 Javascript
jQuery实现简单二级下拉菜单
2015/04/12 Javascript
在线所见即所得HTML编辑器的实现原理浅析
2015/04/25 Javascript
JS拖拽插件实现步骤
2015/08/03 Javascript
javascript正则表达式定义(语法)总结
2016/01/08 Javascript
JS中dom0级事件和dom2级事件的区别介绍
2016/05/05 Javascript
js实现文字超出部分用省略号代替实例代码
2016/09/01 Javascript
微信小程序 wxapp导航 navigator详解
2016/10/31 Javascript
jQuery为某个div加入行样式
2017/06/09 jQuery
微信小程序实现文字从右向左无限滚动
2020/11/18 Javascript
vue中添加与删除关键字搜索功能
2019/10/12 Javascript
js实现掷骰子小游戏
2019/10/24 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
深入探究Python中变量的拷贝和作用域问题
2015/05/05 Python
python写入中英文字符串到文件的方法
2015/05/06 Python
Python解惑之整数比较详解
2017/04/24 Python
python-序列解包(对可迭代元素的快速取值方法)
2019/08/24 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
Python json解析库jsonpath原理及使用示例
2020/11/25 Python
时尚设计师手表:The Watch Cabin
2018/10/06 全球购物
大堂副理的岗位职责范文
2014/02/17 职场文书
活动宣传策划方案
2014/05/23 职场文书
纺织工程专业推荐信
2014/09/08 职场文书
行政秘书工作自我鉴定
2014/09/15 职场文书
场地使用证明模板
2014/10/25 职场文书
2014年大学班级工作总结
2014/11/14 职场文书
关爱留守儿童主题班会
2015/08/13 职场文书
学习习近平主席讲话心得体会
2016/01/20 职场文书
python第三方网页解析器 lxml 扩展库与 xpath 的使用方法
2021/04/06 Python
Win11运行育碧游戏总是崩溃怎么办 win11玩育碧游戏出现性能崩溃的解决办法
2022/04/06 数码科技
MySQL自定义函数及触发器
2022/08/05 MySQL