cookie在jQuery中没有到期

时间:2015-05-26 07:16:39

标签: jquery cookies

我是jQuery的绝对新手。

我必须向用户显示弹出窗口仅两天。 (即用户指南) 使用cookie我们可以验证这种情况吧!

那么,“我必须设置cookie?”

我的代码是:

        var eTime = new Date();
        eTime.setTime(eTime.getTime() + (30 * 1000));   
        //cookie will expire in 30 sec.
        $.cookie('guide', '1', {  expires : eTime});

        if($.cookie('guide') == '1'){                               

            alert("is Live");               
            $("#user-guide").fadeIn(3000);
        }

注意:出于测试目的,我已将Cookie过期时间更改为30秒。

我的想法:每次页面加载的Cookie都会设置相同的值。

我试过这个:在登录页面设置cookie(即,呼叫一次)并在主页中检查cookie状态。 “并且工作正常” ,但在用户登录时也会初始化Cookie。

那么,“我必须设置cookie?”

还是以其他方式做到这一点?

1 个答案:

答案 0 :(得分:0)

我认为让这个工作的最佳方法是创建一个setCookie函数来处理cookie。

您的代码看起来很好,但即使cookie已经存在,您也总是重置cookie。

您必须先检查cookie:

function setCookie() {
    var eTime = new Date();
    eTime.setTime(eTime.getTime() + (30 * 1000));   

    if($.cookie('guide') === null) {                               
       //create cookie which will expire in 30 sec.
       $.cookie('guide', '1', {  expires : eTime});
    } else {
       alert("is Live");               
       $("#user-guide").fadeIn(3000);
    }
}