用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 相关文章推荐
jQuery 各种浏览器下获得日期区别
Dec 22 Javascript
javascript-简单的计算器实现步骤分解(附图)
May 30 Javascript
Javascript中各种trim的实现详细解析
Dec 10 Javascript
微信小程序 Image API实例详解
Sep 30 Javascript
JavaScript实现公历转农历功能示例
Feb 13 Javascript
JS字符串按逗号和回车分隔的方法
Apr 25 Javascript
ES6使用Set数据结构实现数组的交集、并集、差集功能示例
Oct 31 Javascript
浅谈vuejs实现数据驱动视图原理
Feb 23 Javascript
解决vue-cli项目webpack打包后iconfont文件路径的问题
Sep 01 Javascript
微信小程序绑定手机号获取验证码功能
Oct 22 Javascript
vue项目打包后请求地址错误/打包后跨域操作
Nov 04 Javascript
JS数组方法some、every和find的使用详情
Oct 05 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
动漫定律:眯眯眼都是怪物!这些角色狠话不多~
2020/03/03 日漫
用PHP4访问Oracle815
2006/10/09 PHP
PHP下用rmdir实现删除目录的三种方法小结
2008/04/20 PHP
不用mod_rewrite直接用php实现伪静态化页面代码
2008/10/04 PHP
php 中英文语言转换类代码
2011/08/11 PHP
关于恒等于(===)和非恒等于(!==)
2007/08/20 Javascript
js各种验证文本框输入格式(正则表达式)
2010/10/22 Javascript
JS操作CSS随机改变网页背景实现思路
2014/03/10 Javascript
js中运算符&amp;&amp; 和 || 的使用记录
2014/08/21 Javascript
基于jQuery实现表单提交验证
2014/11/24 Javascript
js实现横向百叶窗效果网页切换动画效果的方法
2015/03/02 Javascript
JavaScript中的substr()方法使用详解
2015/06/06 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
js上下视差滚动简单实现代码
2017/03/07 Javascript
JS+html5 canvas实现的简单绘制折线图效果示例
2017/03/13 Javascript
Bootstrap table使用方法总结
2017/05/10 Javascript
vue 全选与反选的实现方法(无Bug 新手看过来)
2018/02/09 Javascript
JavaScript设计模式之缓存代理模式原理与简单用法示例
2018/08/07 Javascript
在Vue-cli里应用Vuex的state和mutations方法
2018/09/16 Javascript
angular中子控制器向父控制器传值的实例
2018/10/08 Javascript
使用Vue-Awesome-Swiper实现旋转叠加轮播效果&amp;平移轮播效果
2019/08/16 Javascript
Python创建一个空的dataframe,并循环赋值的方法
2018/11/08 Python
Python实现的矩阵转置与矩阵相乘运算示例
2019/03/26 Python
python word转pdf代码实例
2019/08/16 Python
python 进程 进程池 进程间通信实现解析
2019/08/23 Python
django-crontab 定时执行任务方法的实现
2019/09/06 Python
python 代码实现k-means聚类分析的思路(不使用现成聚类库)
2020/06/01 Python
CSS3 实现雷达扫描图的示例代码
2020/09/21 HTML / CSS
实习教师个人的自我评价
2013/11/08 职场文书
装潢设计专业推荐信模板
2013/11/26 职场文书
高一学生评语大全
2014/04/25 职场文书
祖国在我心中演讲稿600字
2014/05/04 职场文书
个人课题方案
2014/05/08 职场文书
村级个人对照检查材料
2014/08/22 职场文书
争做文明公民倡议书
2014/08/29 职场文书
幼儿园教师管理制度
2015/08/05 职场文书