手机号:<input type="text" />
<button>发送</button>
HTML代码
<script>
var btn = document.querySelector('button'); //获取元素
var tim = 3;
btn.addEventListener('click',function(){ //注册点击事件
btn.disabled = true; //如果点击了发送按钮,就禁用
var ding = setInterval(function(){ //设置定时器
if(tim == 0){
clearInterval(ding); //如果倒数3秒到0 就解除定时器
btn.disabled = false; //恢复按钮
btn.innerHTML = '发送'; //按钮内容恢复为发送
tim = 3; //等于0后恢复3秒,以便于下次点击发送后从3秒开始计时
}else{
btn.innerHTML = "还剩下"+ tim + "秒"; //如果tim不等于0 就把btn按钮内容改成还剩下tim秒 tim = 3就是从3开始倒数
tim--; //倒数 所以tim--
}
},1000)
})
</script>
首先获取元素
定义一个tim=3
注册点击事件
如果点击了发送,就禁用这个按钮
禁用后利用setInterval设置定时器
if语句判断,如果tim倒计时数==0 就clearInterval结束定时器 同时恢复发送按钮 用innerHTML恢复发送
tim=3 倒计时到0后重新恢复到3 以便于下次点击发送后从3秒倒计时
如果tim不等于0 利用innerHTML让btn按钮的内容为 "还剩下"+tim+”秒“