一.两种定时器
window对象给我们提供了2个非常好用的方法-定时器。
setTimeout()
setInterval()
二.setTimeout()定时器
setTimeout()方法用于设置一个定时器,该定时器在定时器到期后执行调用函数。
注意∶
1. window可以省略。
⒉这个调用函数可以直接写函数,或者写函数名或者采取字符串‘函数名0'三种形式。第三种不推荐
3.延迟的亳秒数省略默认是0,如果写,必须是亳秒。
4.因为定时器可能有很多,所以我们经常给定时器赋值一个标识符。
三.五秒后自动关闭广告案例
setTimeout)这个调用函数我们也称为回调函数callback
普通函数是按照代码顺序直接调用。
而这个函数,需要等待时间,时间到了才去调用这个函数,因此称为回调函数。
简单理解∶回调,就是回头调用的意思。上一件事干完,再回头再调用这个函数。
以前我们讲的 element.onclick = function(或者element.addEventListener("click",fn);里面的函数也是回调函数。
四.清除定时器之clearTimeout
clearTimeout ()方法取消了先前通过调用setTimeout ()建立的定时器。
注意∶
1.window可以省略。
2.里面的参数就是定时器的标识符。
五.定时器之setInterval
setlnterval)方法重复调用一个函数,每隔这个时间,就去调用一次回调函数。注意︰
1.window可以省略。
⒉这个调用函数可以直接写函数,或者写函数名或者采取字符串'函数名(’三种形式。
3.间隔的毫秒数省略默认是0,如果写,必须是毫秒,表示每隔多少毫秒就自动调用这个函数。
4.因为定时器可能有很多,所以我们经常给定时器赋值一个标识符。
六.倒计时案例
案例分析:
这个倒计时是不断变化的,因此需要定时器来自动变化 ( setInterval )
三个黑色盒子里面分别存放时分秒
三个黑色盒子利用innerHTML放入计算的小时分钟秒数
第一次执行也是间隔毫秒数,因此刚刷新页面会有空白
最好采取封装函数的方式,这样可以先调用一次这个函数,防止刚开始刷新页面有空白问题
七.清除定时器之setInterval
clearInterval()方法取消了先前通过调用setInterval ()建立的定时器。
注意:
1.window可以省略。
2里面的参数就是定时器的标识符。
八.发送短信案例
案例分析:
按钮点击之后,会禁用disabled为true
同时按钮里面的内容会变化,注意button里面的内容通过innerHTML修改
里面秒数是有变化的,因此需要用到定时器
定义一个变量,在定时器里面,不断递减
如果变量为0说明到了时间,我们需要停止定时器,并且复原按钮初始状态。