定时 JavaScript提供了几个函数来让你控制和设置某些行为的执行时间,这类函数中最常见的是: 1. setInterval 2. clearInterval 3. setTimeout 4. clearTimeout setInterval函数 在某些情况下,JavaScript代码需要反复执行但又无需任何的用户交互,setInterval函数可以让你很容易就做到这一点。setInterval有两个必需的和一个可选的参数,第一个必需的参数是你想要重复执行的代码(code),第二个参数是毫秒(milliseconds),其定义了JavaScript代码每次执行的间隔时长。第三个可选参数是一个可传递给函数调用的实际参数,这一函数调用是通过code参数来指定的。一开始你可能会觉得所设置的间隔时长有些奇怪,因为它被定义成毫秒。因此,如果你希望每间隔一秒钟运行一次的话,就是要1000毫秒,两秒就是2000毫秒,如此类推。表2列出了每个参数及其在setInterval函数中的作用。 表2. setInterval函数的可用参数 参数必需的还是可选的 描述 code必需的 setInterval函数要执行的JavaScript代码; 这一代码可以是定制的或是一个函数调用。 milliseconds 必需的 每两次代码执行之间的间隔时长,以毫秒为单位。 argument 可选的 是一个很有用的参数,当函数被用作code参数时, 可用来把实际参数传递给该函数。 下面的代码提供了这样的一个例子,即如何使用setInterval函数来每隔10秒钟就执行一次另一个函数,并把一个参数传递给该函数。这样argument的值就可以在执行函数的内部被访问,该参数可以是一个变量、对象,或是一个简单的文本串,如该例子中展示的那样: setInterval(myFunction, 10000, 'sample'); function myFunction(myArg) { alert('myFunction argument value: '+ myArg); } 如果你想要终止这样的一种间隔执行的话,语言也为此提供了一个函数。 clearInterval函数 终止间隔行为需要用到clearInterval函数,不过在最初创建间隔行为时必须要包含一个变量,这样之后的clearInterval才能引用它。下面的代码提供了一个例子,说明clearInterval函数如何引用之前为最初的setInterval设定的变量: var myInterval = setInterval(myFunction, 10000, 'sample'); function myFunction(myArg) { alert('myFunction argument value: '+ myArg); clearInterval(myInterval); } 正如你所见到的那样,最初的setInterval函数被指派了一个变量名,其名称为myInterval。在这以后你就可以使用myInterval来引用setInterval,并可改变这一变量,或是使用clearInterval函数来停止最初的间隔执行函数。在这一例子中,这一函数只被调用了一次,因为clearInterval函数在该函数第一次调用时就执行了。 setTimeout函数 在可以基于某个时间约束来执行代码方面,setTimeout函数类似于setInterval函数,甚至其参数也是和setInterval的一样的(参见表2)。不过,最大的不同则是setTimeout函数只执行代码一次而不是重复执行。这里的例子说明了如何使用setTimeout函数来在10秒钟之后执行一个函数。 setTimeout(myFunction, 10000, 'sample'); function myFunction(myArg) { alert('myFunction argument value: '+ myArg); } 在你希望执行某些代码,但又不想立刻执行的时候,setTimeout很有用,其实质上就是一种延迟代码执行的方式。 clearTimeout函数 如果出于某些原因,你改变了主意,需要取消setTimeout设置的延迟行为的话,则clearInterval函数可用来处理这一工作。与clearInterval函数一样,要为setTimeout函数指派一个变量名称,这样过后clearTimeout就可以引用它并停止它所设定的行为。下面的代码提供的例子说明了如何使用clearTimeout来停止setTimeout设定的调用: var myTimeout = setTimeout(myFunction, 10000, 'sample'); function myFunction(myArg) { alert('myFunction argument value: '+ myArg); clearTimeout(myTimeout); } 在这一例子中,你给最初的setTimeout函数指派了一个变量名称,其被命名为myTimeout。接着你就可以使用myTimeout来引用setTimeout函数并使用clearInterval函数来停止它。 例子:实现页面跳转的时候,显示还剩 N 秒 通过setTimeout()方法: <script type="text/javascript"> var lefttime=5; function timeout(){ if(lefttime<0){ window.location.href="http://www.baidu.com"; return; } document.getElementsByTagName("div")[0].innerHTML="还剩"+lefttime+" s"; lefttime--; setTimeout(timeout,1000); } </script> <div>This is my JSP page. </div><br> <input type="button" onclick="beginTimeout()"> 上面要调用timeout();即可。 或者使用setInterval()方法: <script type="text/javascript"> var lefttime=5; var interval; function timeout(){ if(lefttime<0){ clearInterval(interval); window.location.href="http://www.baidu.com"; return; } document.getElementsByTagName("div")[0].innerHTML="还剩"+lefttime+" s"; lefttime--; } function beginTimeout(){ interval = setInterval(timeout,1000); } </script> <div>This is my JSP page. </div><br> <input type="button" onclick="beginTimeout()"> 通过调用beginTimeout()方法即可。
相关推荐
NULL 博文链接:https://rainbow702.iteye.com/blog/1668935
使用SetInterval和设定延时函数setTimeout 很类似。setTimeout 运用在延迟一段时间,再进行某项操作。
Javascript的setTimeOut和setInterval函数应用非常广泛,它们都用来处理延时和定时任务,比如打开网页一段时间后弹出一个登录框,页面每隔一段时间发送异步请求获取最新数据等等。但它们的应用是有区别的。 ...
必需,要调用的函数后要执行的 JavaScript 代码串。 millisec 必需,在执行代码前需等待的毫秒数。 setTimeinterval setInterval(code,millisec[,”lang”]) 参数 描述 code 必需,要调用的函数或要...
JavaScript中setTimeout和setInterval函数的传参及调用_.docx
Javascript定时器(二)——setTimeout与setInterval 在 http://www.cnblogs.com/strick/p/3983904.html 有说明
setTimeout和setInterval的语法相同。它们都有两个参数,一个是将要执行的代码字符串,还有一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将执行那段代码。不过这两个函数还是有区别的,setInterval在执行完...
js 代码中执行循环事件时,经常会用到 setInterval 和 setTimeout 这两个方法,关于这两个方法的细节这里不详细讨论了,简要分享下在需要停止循环事件的时候该如何操作。 (1)setInterval 方法可按照指定的周期(以...
主要介绍了浅谈JavaScript中setInterval和setTimeout的使用问题,作者建议在任务庞大时尽量避免使用setInterval,需要的朋友可以参考下
Javascript的setTimeOut和setInterval函数应用非常广泛,它们都用来处理延时和定时任务,比如打开网页一段时间后弹出一个登录框,页面每隔一段时间发送异步请求获取最新数据等,本文文章通过代码示例给大家介绍...
关于JS定时器(setTimeout setInterval)定时不准问题1
timercpp:为C 开发提供类似于Javascript中的setTimeout和setInterval功能
主要介绍了JavaScript中setTimeout和setInterval函数的传参及调用,着两个函数可以把要执行的代码在设定的一个时间点插入js引擎维护的一个代码队列中,需要的朋友可以参考下
主要帮助大家学习理解javascript定时器中的setTimeout与setInterval,从实例出发进行深入探讨,感兴趣的小伙伴们可以参考一下
详细讲解SetInterval与setTimeout的区别和用法
主要介绍了JavaScript setInterval()与setTimeout()计时器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
unref()和ref()用法非常的简单,就是取消和回复setTimeout和...//取消setTimeout和setInterval函數的調用 timer.ref();//恢復setTimeout和setInterval函數的調用 是不是超级简单,如果还不明白,请放过javascript吧