2014-07-16 148 views
-2

我有这个cookie用于存储用户以前从菜单中选择的内容。但是,即使用户关闭了浏览器,我也希望将此cookie保存在浏览器中。此代码完全适用于IE,但是当我关闭Chrome和Firefox时,Cookie将被删除。任何人都可以为我提供解决方案。关闭浏览器时cookie被删除

function setCookie(NameOfCookie, value, expiredays) { 
    var ExpireDate = new Date(); 
    document.cookie = NameOfCookie + "=" + escape(value) + ((expiredays == null) ? "" : "; expires=" + ExpireDate.toGMTString()); 
} 

function delCookie (NameOfCookie) { 
    if (getCookie(NameOfCookie)) { 
    document.cookie = NameOfCookie + "=" + "; expires=Thu, 17-Jul-24 00:00:01 GMT"; 
    } 
} 
+0

你怎么称呼这个代码?如果您未通过过期日期,那么您明确要求立即过期。 –

+0

我打电话像这样onClick =“setCookie('redirectcountry','CA')” – user3689990

回答

0

如果调用

setCookie('redirectcountry', 'CA') 

的功能,那么你的到期日设定为new Date(),那就是“现在”。因此,将cookie立即删除是正常行为。

简单的解决方案:把它作为

setCookie('redirectcountry', 'CA', true) 
+0

所以你有什么建议? – user3689990

+0

@ user3689990不设置有效期限 –

+0

感谢您的帮助:) – user3689990

0

您是否检查了浏览器设置?在Firefox中,这个选项名为'Keep until',值为'我关闭Firefox'(隐私标签)。

+0

是的。我检查了。我设置为Firefox将记住历史记录。现在Firefox即使关闭浏览器也会保存cookie。我如何在Chrome – user3689990

+0

设置,隐私,内容设置中选择“允许设置本地数据”。 Afaik这个选项应该默认设置... – njyngs

+0

好吧它已经被选中了。但铬仍然有这个问题 – user3689990

相关问题