jquery实现点击按钮变灰不可点击并开始倒计时10秒特效代码
实现代码
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
</head>
<body>
<input type="button" value="获取验证码" id="searchButton" onclick="sendQipa250()"/><br/>
</body>
<script src="http://www.qipa250.com/static/vendors/jquery/dist/jquery.min.js"></script>
<script>
var time = 10;
function sendQipa250() {
if (time == 0) {//重新获取验证码
$("#searchButton").attr("disabled", false);
$("#searchButton").val("点击发送验证码");
time = 10;
return false;//清除定时器
} else {
$("#searchButton").attr("disabled", true);
$("#searchButton").val("重新发送(" + time + ")");
time--;
}
//设置一个定时器
setTimeout(function () {
sendQipa250()
}, 1000)
}
</script>
</html>
代码解析
1、给按钮绑定一个点击事件
<input type="button" value="获取验证码" id="searchButton" onclick="sendQipa250()"/><br/>
2、设置一个初始的时间值,决定按钮过多少秒恢复
<script>
var time = 10;
3、进行时间判断
若time==0则表示当前的按钮计时完毕,需要将按钮恢复,并且重新赋值,若!=0则表明当前正在计时,按钮禁用,并且时间time-1
if (time == 0) {//重新获取验证码
4、设置一个计时器
依靠计时器来完成时间的倒数,这里setTimeout函数中包含了两个参数,一个是每隔多久时间后就调用的方法,另一个参数表示的是间隔时间
setTimeout(function () {
sendQipa250()
}, 1000)