效果图:
实现思路:
定义一个按钮,然后在用户点击按钮之后触发点击事件,并且禁用按钮。然后用 setTimeinterval 设置定时器开始倒计时,通过 node.innerHTML 来修改按钮中的文字。当倒计时到0, 就恢复按钮功能,并用 clearInterval 取消定时任务。
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
</style>
</head>
<body>
<input type="text">
<button>发送</button>
<script>
var btn = document.querySelector('button');
var timer = null;
btn.addEventListener('click', function () {
btn.disabled = true;
var num = 10;
btn.innerHTML = '等待' + num + 's后才可重新发送';
timer = setInterval(function () {
num--;
if (num == 0) {
clearInterval(timer);
btn.disabled = false;
btn.innerHTML = '发送';
} else {
btn.innerHTML = '等待' + num + 's后才可重新发送';
}
}, 1000);
})
</script>
</body>
</html>