JavaScript使用定时器,在很多情况下,我们想要让程序延迟特定一段时间再执行JavaScript代码。在编写用户交互例程时,这种情况特别常见,例如,你想要让一条消息显示一会儿,然后再将其删除。
为了做到这一点,JavaScript提供了两个有用的方法,它们分别是setTimeout()
和setInterval()
。
注意:定时器方法
setTimeout()和setInterval()都是HTML DOM window对象的方法。
setTimeout()
setTimeout(action, delay)
方法在第2个参数所指定的那么多毫秒之后,调用作为第1个参数传入的函数(或者计算该表达式)。例如,可以用它在一个给定的配置中显示一个元素,达到一段固定的时间段:
<div id="id1">I′m about to disappear!</div>
假设页面包含了前面的<div>
元素。如果把如下的代码放入该页面的<head>
部分的一个<script>
元素中,hide()函数将在页面完成加载后执行3秒,以使得<div>
元素不可见:
function hide(elementId) {
document.getElementById(elementId).style.display = ′none′;
}
window.onload = function() {
setTimeout("hide(′id1′)", 3000);
}
setTimeout()方法返回一个值。如果稍后想要取消定时器函数,可以通过将该返回值传入clearTimeout()方法来引用它。
var timer1 = setTimeout("hide(′id1′)", 3000);
clearTimeout(timer1);
setInterval()
setInterval(action, delay)
方法的工作方式和setTimeout()类似,但是,它并不是在执行作为第1个参数传递的语句之前强制进行延迟,而是会重复地执行,在两次执行之间,延迟第2个参数所指定的毫秒数。
和setTimeout()一样,setInterval()返回一个值,随后可以将其传递给clearInterval()方法以停止该定时器。
var timer1 = setInterval("updateClock()", 1000);
clearInterval(timer1);
酷客网相关文章:
评论前必须登录!
注册