间歇定时器让定时器每隔一段时间就执行一次,直到清除定时器为止。语法:
var intervalID = setInterval(func, delay);
intervalID 定时器的id,用于清除
func 重复执行的函数
delay 每次延迟的毫秒数
例举一个点击按钮进行计时发送短信验证码的简单实例,说明间歇定时器的应用。
<body>
<button>发送短信验证码</button>
<script>
var button = document.getElementsByTagName("button")[0];
//button绑定点击事件
button.onclick = function () {
var num = 5;
// 禁用按钮
button.disabled = true;
//设置间歇定时器,每隔1000毫秒执行一次
var timer = setInterval(function () {
num--;
button.innerHTML = num + "秒后重新发送验证码";
if(num == 0 ){
//计时剩0秒时,清除定时器,启用按钮
clearInterval(timer);
button.disabled = false;
button.innerHTML = "发送短信验证码";
}
},1000);
}
</script>
</body>