cookie存验证码时间,时间没走完不能再次点击

Posted 兼容IE8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cookie存验证码时间,时间没走完不能再次点击相关的知识,希望对你有一定的参考价值。

<script>
    var balanceSeconds=getcookie(‘Num‘);
    console.log(balanceSeconds)
    var timer;
    var isClick=true;
     if(balanceSeconds==‘‘||balanceSeconds==undefined||balanceSeconds==‘120‘){
        balanceSeconds=120; 
        isClick=true;
        $(".getSmsVer_cer").html( "获取验证码");
    }else if(0<balanceSeconds<120){
        isClick=false;
        $(".getSmsVer_cer").html(balanceSeconds+ "秒后可重发");
        countDownSubtract();
    }
    $(‘.getSmsVer_cer‘).on(‘click‘,function(){
        if(isClick){
            countDownSubtract();
        }
    })
        
// 设置cookie
     function setcookie(name,value,time){
        var dates=new Date();
        // cookie有效时间120秒
        var d=dates.setTime(dates.getTime()+time*(120*1000));
        document.cookie=name+‘=‘+value+‘;expires‘+d;
    }
    // 获取cookie
    function getcookie(name){
        var b=document.cookie.split("; ");
        var c=[];
        for(var i=0;i< b.length;i++){
            c.push(b[i].split("=")); 
            if(name==c[i][0]){
                return c[i][1]
            }
        }
    }
    // 删除cookie
    function removecookie(name){
        setcookie(name,"",-1)
    }

    // 120秒倒计时
    function countDownSubtract(){
        clearInterval(timer);
        timer = setInterval(countDown, 1000);
    }
    function countDown() {
        if(balanceSeconds > 1){
            $(".getSmsVer_cer").html(balanceSeconds + "秒后可重发");
            $(".getSmsVer_cer").css("background","#ccc");
            isClick=false;
        }
        balanceSeconds--;
        if (balanceSeconds < 1) {
            $(".getSmsVer_cer").html("现在可重新发送!");
            clearInterval(timer);
            isClick=true;
            balanceSeconds = 120;
            $(".getSmsVer_cer").html("获取验证码");
        }
        setcookie(‘Num‘,balanceSeconds,1);
    } 

</script>
<div class="getSmsVer_cer">获取验证码</div>

  

以上是关于cookie存验证码时间,时间没走完不能再次点击的主要内容,如果未能解决你的问题,请参考以下文章

登录验证码的请求思路

js jquery 实现点击按钮后,倒计时60秒才能再次点击发送验证码

验证码---短信验证码

为啥我手机的网页验证码出不来

JavaScript + PHP 实现刷新继续保持倒计时的按钮

点击获取验证码后60秒内禁止重新获取(防刷新)