RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:9:30-18:00
你可能遇到了下面的问题
关闭右侧工具栏

技术支持

谷歌推广 > 技术支持 > 推广优化 >

JS发送手机验证码倒计时特效

  • 作者:谷歌推广
  • 发表时间:2019-12-31 17:43
  • 来源:迅龙网络

        alert('请输入有效的手机号码!'); 

        }, 1000);

function SetRemainTime() {  

      document.cookie=cookieString; 

             break;

第一种:普通效果,刷新页面倒计时失效

var countdown;

}

                    //倒计时效果  getCode回调函数  获取验证码api

function backFunc1(data){

    }

    setTimeout(function() { settime(obj) },1000) //每1000毫秒执行一次

        type : 'POST',

    $("#second").click(function (){

                            console.log("验证码将发送到你手机");

<input id="second" type="button"  value="免费获取验证码"  />

    var phonenum = $("#phonenum").val();

      var strCookie=document.cookie; 

        });  

    else {  

    });

    }

    //location.href作为页面的唯一标识,可能一个项目中会有很多页面需要获取验证码。

        obj.attr("disabled", true); 

//修改cookie的值

    } else {

    }else{  

    //判断是否设置过期时间,0代表关闭浏览器时失效


 * @param {Object} obj 获取验证码按钮

var InterValObj; //timer变量,控制时间  

    curCount = count;  

我们在网站建设中,比喻会员注册等需要用到的发送手机验证码倒计时效果,具体请看如下:

        curCount--;  

}

};

    }  

                }

                        }

    if(!d.success){

            });

}

    var phone=$("#mob").val();//手机号码  

        doPostBack('${base}/login/getCode.htm',backFunc1,{"phonenum":phonenum});

        var timer = setInterval(function() {

/**

    }else{

      cookieString=cookieString+";expires=" + date.toGMTString(); 

        obj.text(_delay).addClass("btn-disabled");

        cache : false,

                    countDown($(this), getCode);

<script>

        alert("模拟验证码:"+d.msg);

//timer处理函数  

    LocalDelay.delay = localStorage.getItem("delay_" + location.href);

//设置setLocalDelay

        url : url,// 请求的action路径

                        if (res.code == 000) {

                _delay--;

    if(!myreg.test(phonenum)){ 

function editCookie(name,value,expiresHours){ 

}  

    if (obj.text() == "获取验证码") {

//发送验证码

        date.setTime(date.getTime()+expiresHours*1000); 

/**

function doPostBack(url,backFunc,queryParam) {

        window.clearInterval(InterValObj);//停止计时器  

        return;

                obj.text(delay);

        var delay = _delay;

 * 

        if(arr[0]==name){

function getCookieValue(name){ 

第三种:使用localStorage存储验证码,实现防止页面刷新

    } else { 

$(function(){

        $("#btnSendCode").removeAttr("disabled");//启用按钮  

        settime(obj);//开始倒计时

    }else{//返回验证码

    var phonenum = $("#phonenum").val();

    }

      date.setTime(date.getTime()+expiresHours*1000); //单位是毫秒

 */

    localStorage.setItem("delay_" + location.href, delay);

    var d = $.parseJSON(data);

第二种:使用js操作cookie实现防页面刷新

    if (countdown == 0) { 

    if (curCount == 0) {                  

        alert(d.msg);


        InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次  

            url: '/pims/send.php', //目标地址  

        data:queryParam,

    var cookieString=name+"="+escape(value); 

    var result = isPhoneNum();

            type: "POST", //用POST方式传输  

    var timeLine = parseInt((new Date().getTime() - LocalDelay.time) / 1000);

        obj.val("免费获取验证码"); 

       

 */

            data: "phone=" + phone,  

        //产生验证码  

    if(expiresHours>0){ 

    }


    if(v>0){

                clearInterval(timer);

    var LocalDelay = {};

            }

    } else {

v = getCookieValue("secondsremained")?getCookieValue("secondsremained"):0;//获取cookie值

                    $.get(":8080/demo/js/json.json", {}, function(res) {

    LocalDelay.time = localStorage.getItem("time_" + location.href);

        cookieString=cookieString+";expires=" + date.toUTCString(); 

                obj.text(_delay);

        return false; 

//getLocalDelay()

        //设置button效果,开始计时  

            error: function (XMLHttpRequest, textStatus, errorThrown) { },  

            }

</script>

            if (delay > 1) {

    }  

/*业务逻辑*/

        $("#btnSendCode").val(curCount + "秒后可重发验证码");  

                setLocalDelay(_delay);

        console.log("过期");

        $("#btnSendCode").val("重新发送验证码");  

    } 

            dataType: "text", //数据格式:JSON  

        error : function() {// 请求失败处理函数

function settime(obj) { 

function monitor(obj) {

function getLocalDelay() {

        $("#btnSendCode").val(curCount + "秒后可重发验证码");  

                btn.onclick = function() {

    localStorage.setItem("time_" + location.href, new Date().getTime());

        _delay = LocalDelay.delay - timeLine;

 * 

          break;

<input id="btnSendCode" type="button" value="发送验证码" onclick="sendMessage()" />

      for(var i=0;i<arrCookie.length;i++){ 

    }  

//业务逻辑

    });

                    });

//开始倒计时

    }

//功能实现

    if(expiresHours>0){ 

        var arr=arrCookie[i].split("="); 

        obj.text(_delay).addClass("btn-disabled");

//倒计时效果

        $("#code").val(d.msg);

    if(result){

 * @param {Function} callback  获取验证码接口函数

        countdown--;

//发送验证码时添加cookie

        },

//将手机利用ajax提交到后台的发短信接口

//alert(msg);

            } else {

                monitor($(btn));

                setLocalDelay(delay);

<input type='text' name='mob' id="mob">

                delay--;

                //点击click

                        } else {

    countdown=getCookieValue("secondsremained");

<script>

        var _delay = 60;

}

//根据名字获取cookie的值

    var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; 

}  

        async : false,

 * @param {Object} obj  获取验证码按钮


    $.ajax({

                obj.text("获取验证码").removeClass("btn-disabled");

        }, 1000);

        sendCode($("#second"));

                function getCode() {

    //向后台发送处理数据  

        var date=new Date(); 

})

    //v = getCookieValue("secondsremained");//获取cookie值

    } 

        </script>

}  


        }else{

                };

        addCookie("secondsremained",60,60);//添加cookie记录,有效时间60s

         } 

          return unescape(arr[1]);

        var timer = setInterval(function() {

        document.cookie=cookieString; 

                            alert(res.message);

function sendMessage() {  

}

        callback();

function setLocalDelay(delay) {

    var cookieString=name+"="+escape(value); 

function countDown(obj, callback) {

      } 

//校验手机号是否合法

    var LocalDelay = getLocalDelay();

        $.ajax({  

    return LocalDelay;

        obj.removeAttr("disabled");    

                obj.text("获取验证码").removeClass("btn-disabled");

</script> 


        alert("手机号码不能为空!");  

            success: function (msg){ 

function sendCode(obj){

var curCount;//当前剩余秒数  

<input type='text' name='mobcode' class='inputxt' datatype='*' nullmsg='手机验证码不能留空!'>

        success : backFunc

    } 

    }

        settime($("#second"));//开始倒计时

            } else {

<script type="text/javascript">  

        code = ""; //清除验证码。如果不清除,过时间后,输入收到的验证码依然有效      


      var arrCookie=strCookie.split("; "); 

}

             return ""; 

            if (_delay > 1) {

}

        return false;

                var btn = document.getElementById("btn-getcode");

function isPhoneNum(){

        editCookie("secondsremained",countdown,countdown+1);

            $(function() {

        $("#btnSendCode").attr("disabled", "true");  

        return true;

function addCookie(name,value,expiresHours){ 

                //调用监听


                clearInterval(timer);

        obj.val("重新发送(" + countdown + ")"); 

    if (timeLine > LocalDelay.delay) {

var count = 120; //间隔函数,1秒执行  

    if(phone != ""){  

      var date=new Date(); 

上一篇:网站收录量增加缓慢的十个原因 下一篇:深圳网站建设总共分几个步骤