用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 相关文章推荐
Javascript中的var_dump函数实现代码
Sep 07 Javascript
基于jquery自定义的漂亮单选按钮RadioButton
Nov 19 Javascript
利用js判断浏览器类型(是否为IE,Firefox,Opera浏览器)
Nov 22 Javascript
搭建pomelo 开发环境
Jun 24 Javascript
jQuery设置Easyui校验规则(推荐)
Nov 21 Javascript
webpack打包后直接访问页面图片路径错误的解决方法
Jun 17 Javascript
利用nginx + node在阿里云部署https的步骤详解
Dec 19 Javascript
细说Vue组件的服务器端渲染的过程
May 30 Javascript
微信小程序 select 下拉框组件功能
Sep 09 Javascript
JavaScript数组常用的增删改查与其他属性详解
Oct 13 Javascript
vue+node 实现视频在线播放的实例代码
Oct 19 Javascript
javascript实现京东快递单号的查询效果
Nov 30 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
一拳超人中怪人协会钦定! S级别最强四人!
2020/03/02 日漫
一个程序下载的管理程序(三)
2006/10/09 PHP
Joomla简单判断用户是否登录的方法
2016/05/04 PHP
PHP中STDCLASS用法实例分析
2016/11/11 PHP
php框架知识点的整理和补充
2021/03/01 PHP
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
Nodejs中自定义事件实例
2014/06/20 NodeJs
JS获取及设置TextArea或input文本框选择文本位置的方法
2015/03/24 Javascript
纯js实现仿QQ邮箱弹出确认框
2015/04/29 Javascript
JavaScript中判断函数、变量是否存在
2015/06/10 Javascript
JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
2015/10/26 Javascript
js实现滚动条滚动到某个位置便自动定位某个tr
2021/01/20 Javascript
在JavaScript中对HTML进行反转义详解
2016/05/18 Javascript
解析JavaScript中的字符串类型与字符编码支持
2016/06/24 Javascript
jQuery实现查找链接文字替换属性的方法
2016/06/27 Javascript
javascript 实现动态侧边栏实例详解
2016/11/11 Javascript
基于node打包可执行文件工具_Pkg使用心得分享
2018/01/24 Javascript
Vue项目自动转换 px 为 rem的实现方法
2018/10/29 Javascript
Openlayers实现地图全屏显示
2020/09/28 Javascript
解决pyinstaller打包发布后的exe文件打开控制台闪退的问题
2019/06/21 Python
Django对数据库进行添加与更新的例子
2019/07/12 Python
Django Rest framework权限的详细用法
2019/07/25 Python
Python基本语法之运算符功能与用法详解
2019/10/22 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
如何在python中写hive脚本
2019/11/08 Python
selenium+headless chrome爬虫的实现示例
2021/01/08 Python
python在协程中增加任务实例操作
2021/02/28 Python
印度购物网站:TATA CLiQ
2017/11/23 全球购物
Expedia印度尼西亚站:预订酒店、廉价航班和度假套餐
2018/01/31 全球购物
大学生自我评价怎样写好
2013/10/23 职场文书
师范应届毕业生自荐信
2013/11/18 职场文书
旅游管理专业个人求职信范文
2013/12/24 职场文书
大学新生军训自我鉴定
2014/09/18 职场文书
2014年重阳节老干部座谈会上的讲话稿
2014/09/25 职场文书
2016年基层党组织公开承诺书
2016/03/25 职场文书
Android 界面一键变灰 深色主题工具类
2022/04/28 Java/Android