慕数据4614238
2016-05-16 20:12
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>发送验证码练习</title>
<style type="text/css">
.nosend{width: 120px;height: 50px;background-color: #999999;color: #FFFFFF;margin: 30px 400px;}
.send{width: 120px;height: 50px;background-color: #0C4E7C;color: #FFFFFF;margin: 30px 400px;}
</style>
</head>
<body>
<input type="button" id="send" value="发送验证码" class="send"/>
</body>
<script type="text/javascript">
var mybtn=document.getElementById("send");
var timer=null;
var index=10;
mybtn.onclick=function(){
if(timer){clearInterval(timer);timer=null;}
mybtn.setAttribute("disabled","disabled");
mybtn.setAttribute("class","nosend");
timer=setInterval(function(){
index--;
mybtn.value=index+"后重新发送";
if(index<0){
clearInterval(timer);
mybtn.removeAttribute("disabled");
mybtn.setAttribute("class","send");
mybtn.value="重新发送验证码";
index=10;
}
},1000);
}
</script>
</html>这是完整代码,有一个BUG,在火狐浏览器里第一次运行正常,当刷新页面的时候会自动加上一个disabled属性,而在谷歌浏览器里就正常,这是为什么呢?
还有,提示里的disabled属性设置为‘true’或‘false’好像并不管用。
window.onload=function(){
var send=document.getElementById('send'),
times=60,
timer=null;
send.onclick=function(){
timer=setInterval(function(){
times--;
if(times<=0){
send.value="发送验证码"
clearInterval(timer);
send.disabled=""
times=60;
}else{
send.value=times+"秒后重试";
send.disabled="disabled"
}
},1000)
// 计时开始
}
}
自认为代码很简单,你试试,
看不懂
Tab选项卡切换效果
65460 学习 · 581 问题
相似问题
回答 1
回答 4
回答 1
回答 1
回答 2