//指定时间为6000毫秒,即6s,到达6s后,执行一次,之后不再执行。
setTimeout(function(){
alert("执行一次定时器")
},6000)
//指定时间为6s,每过6s执行一次
setInterval(function(){
alert("循环执行定时器")
},6000)
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
要关闭定时器,首先我们要先获取到定时器,即如果页面中设置了多个定时器,我们需要知道要关闭那个定时器,直接看代码:
//定义一个变量获取到定时器
var timer = setInterval(function(){
alert("timer是一个数字,即代表了当前定时器")
},6000)
var timer2 = setTimeout(function(){
alert("第二个定时器")
},6000)
//调用方法,关闭指定的定时器
clearInterval(timer)
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
注:定时器启动后,刷新浏览器会清空定时器。有时我们在页面中定义了定时器,在关闭页面时,定时器并不会关闭,我们可以获取定时器,然后在页面的关闭事件中清除定时器。有时我们需要在其他页面对定时器进行关闭,这时可以在对应的页面定义变量,然后在定义定时器页面获取定时器,并赋值给指定页面的变量,这样就可以在指定页面对定时器进行关闭了,需要注意的是,如果我们定时器放到函数中时,在页面初始化时并不能获取到定时器,只有在调用了函数后才会获取到定时器,所以如果要在页面初始化时就获取定时器,不要将定时器放到函数中。这样在页面加载时可以直接加载定时器启动定时器,这样就能拿到定时器了。
定时器一般有两个
1)setTimeout()//n毫秒后执行一次
2)setInterval()//每隔n秒执行一次
这两个方法都有个返回值,返回一个定时器id,可以定义一个变量接收
清除定时器方法:
setTimeout()对应的是 clearTimeout(id)
setInterval()对应的是 clearInterval(id)
下面有个例子:
<script>//setTimeout 1000ms后执行1次
var i = setTimeout(function(){
},1000)
//setInterval 每隔1000ms执行一次
var j = setInterval(function(){
},1000)
//清除Timeout的定时器,传入id(创建定时器时会返回一个id)
clearTimeout(i)
//清除Interval的定时器,传入id(创建定时器时会返回一个id)
clearInterval(j)
</script>