js 定时器的使用。 setInterval()

时间:2024-08-21 19:37:32

我需要实现的功能是:点击发送按钮,会出现 “已发送60s后可点击重发”,并且,60s 这个数字是随时变化的,60,59,58,57....0,然后再次返回到 发送 按钮。

类似效果,可参考  360首页 找回密码 http://i.360.cn/findpwd/ 功能 中发送短信验证。。

html 代码;

<div>
<a href="javascript:void(0)" class="get_a" id="code_get">获取短信验证码</a>
</div>

css 代码:

 <style>
.get_a{display:block; background:#cc0000; height:40px; line-height:40px; width:135px; color:#fff; text-align:center; font-size:14px; margin-top:15px;}
.get_b{ background:#cbcdd0; color:#000; margin-left:5px;width:280px;height:40px; line-height:40px;text-align:center;font-size:14px; margin-top:15px;}
</style>

jQery 代码:

  <script type="text/javascript">
$(function(){
var timer = null;
var timeCount = 61;
$("#code_get").click(function () {
if (timeCount == 61) {
timeCount = 60;
$("#code_get").addClass('get_b').html("如果未收到激活码,<b>" + timeCount + "</b>秒后请重新获取");
timer = setInterval(function () {
timeCount--;
$("#code_get").html("如果未收到激活码,<b>" + timeCount + "</b>秒后请重新获取");
if (timeCount == 0){
clearInterval(timer);
$("#code_get").removeClass('get_b').html("获取短信激活码");
timeCount = 61;
}
}, 1000);
}
})
</script>