在做注册页面,发送验证码倒计时的时候,我把倒计时的second秒数存为cookie,这样在刷新和离开页面再进来时,可以继续执行计时器,而不会从心开始。
但是当我用window.location.href 跳转页面再回到注册页面时,发现秒数还是离开页面时的秒数
请问有人解决过吗?
//发送验证码
$('.btnStr').click(function(){
var second = 30;
start(second);
})
function start(second){
var timer = setInterval(function(){
if(second>0){
second--;
$('.btnStr').html(second+'秒后重新发送');
}else{
$('.btnStr').html('发送验证码');
clearInterval(timer);
}
setCookie('second',second,1);
},1000)
}
//设置cookie
function setCookie(cname,cvalue,exdays){
var d = new Date();
d.setTime(d.getTime()+(exdays*24*60*60*1000));
var expires = "expires="+d.toGMTString();
document.cookie = cname+"="+cvalue+"; "+expires;
}
//获取cookie
function getCookie(cname){
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i].trim();
if (c.indexOf(name)==0) { return c.substring(name.length,c.length); }
}
return "";
}
//检查cookie
function checkCookie(){
var overplus=getCookie("second");
if (overplus!=0){
start(overplus);
}
}
不应该存秒数 难道不是存一个发送验证码的开始时间 判断一下与当前时间相差是不是
60
秒就行了