我正在尝试制作一个每5秒重复一次的脚本。
将重复的脚本将检查是否存在cookie 如果cookie不存在,则重定向页面 如果cookie确实存在,则不会发生任何事情。
Cookie工作正常,我唯一的问题是它不会重复!
我正在使用jQuery来识别/检查cookie,并且工作正常。
我想知道代码有什么问题。
我多次在网上看过,但找不到我需要的东西却没有运气 这是我使用的cookie插件:https://github.com/carhartl/jquery-cookie
var checkcookie = $.cookie('myCookie');
checklogin();
function checklogin(){
setTimeout(function(){
if(checkcookie == null){
//if cookie not set
window.location.href='/';
}
else{
//if cookie set
}
}, 5000);
checklogin();//to recall the script after it is done
}
或者,如果任何人有另一种检查cookie是否已经改变的方法,我很想知道!
答案 0 :(得分:2)
它工作正常,但你的cookie值没有改变 - 它设置一次且永远。尝试将其加入setTimeout()
:
checklogin();
function checklogin(){
setTimeout(function(){
var checkcookie = $.cookie('myCookie');
if(checkcookie == null){
window.location.href='/';
}
else{
//if cookie set
}
}, 5000);
checklogin(); //to recall the script after it is done
}
答案 1 :(得分:1)
如果你这样做,checklogin调用必须在setTimeout函数内,否则每次都会立即调用。
我也改用setInterval,所以你不需要递归函数:
setInterval(function(){
if(checkcookie == null){
window.location.href='/';
}else{
//if cookie set
}
},5000);