在很多app和网站中,我们登陆或者注册账号,会有一个发送短信验证码的地方1,然而为了防止恶意获取验证码,我们一般都设置了可点击的时间间隔,时间间隔1完了过后,便又可以继续发送,接下来用代码实现
代码如下
<!DOCTYPE html> <html lang=\"en\"> <head> <meta charset=\"UTF-8\"> <title>Title</title> </head> <body> 手机号码:<input type=\"text\"><button>发送验证码</button> <script> var btn=document.querySelector(\'button\') var time=3 btn.addEventListener(\'click\',function () { btn.disabled=true var timer=setInterval(function () { if (time<0){ clearInterval(timer) btn.disabled=false btn.innerHTML=\'发送验证码\' time=3 }else { btn.innerHTML = \'还剩\' + time + \'秒\' time -= 1 } },1000) }) </script> </body> </html>
效果如下
代码解释
这里因为我们只改变按钮的样式和功能,所以只获取了按钮,然后设置一个time变量,这是倒计时的时间。然后设置点击事件,当我们点击这个按钮过后让这个按钮的disable变为true,意思是不能够点击。
然后设置定时器,判断如果倒计时小于0,那么清除定时器,倒计时结束,让按钮变为可点击,里面的1文字变为发送验证码,接着重新给倒计时赋值为3.
如果倒计时大于0,把按钮里面的文字改为\’还剩\’ + time + ‘秒\’,time–,每循环一次都判断一次
© 版权声明
THE END
暂无评论内容