Javascript中setInterval与setTimeout的用法


一、什么叫做JavaScript 的计时事件

使用JavaScript可以实现代码的延时执行,也就是说当一个函数被调用时不立即执行某些代码,而是等一段指定的时间后再执行,这就叫做计时事件。

二、JavaScript 的计时事件的函数

setTimeout() //- 在指定时间后执行代码

clearTimeout() //- 取消 setTimeout()

注意:setTimeout() 和 clearTimeout() 都是HTML DOM 的 Window 对象的函数…

三、setTimeout详解

var t = setTimeout(“javascript 语句”, 时间参数)

注:时间参数单位为毫秒

示例:var t=setTimeout(“alert(‘3 seconds!’)”,3000)

如果js语句带变量,则必须用+号将变量连接起来,如:

var t = setTimeout(”document.getElementByIdx_x_xx_x_x_x_x_x(“+menuid+”).style.display=’none’”,3000)

四、clearTimeout详解

语法:clearTimeout(setTimeout的变量名)

示例:clearTimeout(t)    //其中t为前面设置的setTimeout的变量

使用clearTimeout可以随时停止计时。

五、应用技巧

建议将setTimeout单独设置为一个函数。如:

function delayRun(code, time) {

var t = setTimeout(code, time);

}

这样,在需要让某段代码延时执行的时候,只需在这段代码前加入这个函数就可以了。如:

onmouseover = delayRun(“setTab(0,0)”, 500)

其中setTab是一个自定义的函数。如果以后不想让setTab延时执行,则去掉语句中的delayRun相关的代码即可,

改为:onmouseover=setTab(0, 0) 就可以了。

这种写法避免每一个需要延时的地方都写一段setTimeout的代码,只需要直接调用就可以了,很方便。也节省了代码的量。


4 responses on “Javascript中setInterval与setTimeout的用法

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>