setInterval实现倒计时

当做验证码登录时,发送验证码后为了得到更好的体验效果,input选框中应加上倒计时:

  • 代码如下
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<div>
    <button id="code" class="btn btn-default" onclick="getCode();">获取校验码</button>
</div>
</body>
</html>
<script src="/js/jquery.min.js"></script>
    var i;
    function getCode() {
        //点击按钮后设置时间内不能点击
        $('#code').attr({"disabled":"disabled"});
        //调用定时任务
        i = self.setInterval("countdown()",1000);
    }
    var int = 60;
    function countdown() {
        document.getElementById("code").innerHTML = int + "秒后重新发送";
        int--;
        if(int<0){
            //清除定时任务
            i=window.clearInterval(i);
            int = 10;
            $("#code").removeAttr("disabled").html("重新获取验证码");
        }
}

</script>

结果如下图

猜你喜欢

转载自blog.csdn.net/qq_40018938/article/details/80333472