我的 Javascript cookie 在会话时过期,而不是 30 天

Dou*_*idy 4 javascript cookies jquery

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"});
        }                   
});
Run Code Online (Sandbox Code Playgroud)

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

Rob*_*b W 5

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

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