javascript - 我的 Javascript cookie 在 session 时过期,而不是 30 天后

标签 javascript jquery cookies

jQuery(document).ready(function(){
        if (document.cookie.indexOf('visited=true') === -1) {
            var expires = new Date();
            expires.setDate(expires.getDate()+30);
            document.cookie = "visited=true; path=/; expires="+expires.toUTCString();
            jQuery.colorbox({open:true,href:"<?=home_url()?>/popup/?site_type=2",iframe:true, innerWidth:"700px", innerHeight:"410px"});
        }                   
});

此 cookie 在我关闭浏览器时过期,但我希望它持续 30 天,直到他们再次看到弹出窗口。

最佳答案

不使用 expires,尝试使用 max-age(以秒为单位)。这不涉及创建和修改 Date 实例。

if (document.cookie.indexOf('visited=true') === -1) {
    document.cookie = "visited=true; path=/; max-age=2592000;";

关于javascript - 我的 Javascript cookie 在 session 时过期,而不是 30 天后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10305647/

相关文章:

javascript - 为 Three.js 导出 Colada 纹理

javascript - 过滤后如何使用原来的Backbone集合?

javascript - 拒绝执行来自 'URL' 的脚本,因为它的 MIME 类型 ('text/html' ) 不可执行,并且启用了严格的 MIME 类型检查

ios - 在 WKWebView 和 HTTPCookieStorage 之间复制 cookie - 找不到 302 cookie

多个域的 PHP Cookie

c# - WebResponse 不返回任何 cookie

javascript - JavaScript中有 "null coalescing"运算符吗?

javascript - 一段时间后关闭Bootstrap Modal

javascript - 通过追加将方法链接到新插入的元素

javascript - 下拉菜单中的 jQuery 更改事件