实现思路:
- js获取发送按钮元素对象
- 设置一个发送间隔时间(全局变量)
- 给发送按钮元素对象绑定点击事件- - -onclick,
点击事件处理程序:
① 点击后俺按钮设置成禁用—disabled:true;
② 使用定时函数,时间间隔为1秒,
定时函数调用的函数处理程序:
判断时间是否为0
不为0- - -按钮里的描述内容变为:剩余多少秒,且时间减1
为0- - -则恢复按钮可以点击状态,里面的描述内容恢复成“发送”
代码示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>发送短信</title>
<style>
.box {
width: 360px;
margin: 100px auto;
}
</style>
</head>
<body>
<div class="box">
手机号码:<input type="number">
<button>发送短信</button>
</div>
<script>
var btn = document.querySelector('button');
var time = 10;
btn.addEventListener('click', function() {
btn.disabled = true;
var timer = setInterval(function() {
if (time == 0) {
clearInterval(timer);
btn.disabled = false;
btn.innerHTML = '发送短信';
time = 10;
} else {
btn.innerHTML = '剩余' + time + '秒';
time--;
}
}, 1000);
});
</script>
</body>
</html>
页面效果:
![发送短信.gif](https://i-blog.csdnimg.cn/blog_migrate/e17f72e489d2c78b8aafc670d2ccf23f.gif)