<span id="num">0</span><button onclick="clearInterval(t)">暂停</button>
<script>
var t=setInterval(function(){
num.innerHTML=parseInt(num.innerHTML)+1
},1000)
</script>
js中两种定时器的设置及清除
循环执行:
var timeid = window.setInterval(“方法名或方法”,“延时”)
window.clearInterval(timeid)
<script type="text/javascript">
$(document).ready(function(){ //循环执行,每隔1秒钟执行一次 1000 var
t1=window.setInterval(refreshCount, 1000)
function refreshCount() {
console.log("ready")
}
//去掉定时器的方法
window.clearInterval(t1)
})
</script>
2.定时执行:当方法执行完成定时器停止(但是定时器还在,只不过没用了)
var tmid = window.setTimeout(“方法名或方法”, “延时”)
window.clearTimeout(tmid)
<script type="text/javascript">
$(document).ready(function(){ //定时执行,5秒后执行
var t1=window.setTimeout(refreshCount, 1000 * 5) function refreshCount() {
console.log("ready")
} //去掉定时器的方法 window.clearTimeout(t1)
})
</script>
你在setInterval的时候会返回一个整数,可以说是这个定时器的id,在clearInterval的时候要把这个id作为参数传入。例如:
var timer = setInterval(function(){ /*do something ...*/},500)clearInterval(timer)
或者可以用setTimeout来代替setInterval,例如:
setTimeout(function(){
//do something...
if(未出边界){
setTimeout(arguments.callee,500)//还没出边界,所以,再一次定时执行这个匿名函数本身
}
//如果判断出了边界,就不用再设置下一次执行了,结束执行
},500)
//希望能帮到你