每秒执行:setInterval
指定时间结束后执行:setTimeout
function createTimer(time,interval,timeout){
let hasStartTime = 0//已经走了的时间
interval(hasStartTime)//立即执行一次
let _interval = setInterval(()=>{
hasStartTime = hasStartTime+1000
interval(hasStartTime)
}, 1000)
setTimeout(()=>{
clearInterval(_interval)
timeout()
}, time || 60000)
}
其中time为设定的总时间,interval为每秒执行的操作,timeout为时间结束后执行的操作。记住倒计时结束后要将每秒执行的操作取消掉。
调用者只要自己传入每秒要刷新的内容。比如
let time = 10000
createTimer(time,timeStart=>{
let btn_text = `重新发送(${(time- timeStart)/1000}s)`
let btn_lock = true
},()=>{
let btn_text = `重新发送`,
let btn_lock = false
})
相关推荐:
以上就是js实现短信验证码倒计时实例分享的详细内容,更多请关注php中文网其它相关文章!
已抢186766个
抢已抢67353个
抢已抢353281个
抢已抢667695个
抢已抢122842个
抢已抢24294个
抢