javascript - Cookie 在 Safari 中不起作用

标签 javascript jquery cookies safari

我编写了一个简单的 div,当用户单击 (X) 按钮时它会隐藏。如果用户之前关闭了 div,则下次返回网站时不会出现。所有这些逻辑都是使用 cookie 存储的。在 Chrome 和 Firefox 中完美运行,但在 Safari 中则不然。

我的 javascript 代码用于存储 cookie 信息:

$( document ).ready(function() {
    var cookie = document.cookie;
    if (cookie.indexOf('subscription=', 0) !== -1) {
        $('#pushDown').css('display', 'none');
    } else {
        $("#pushDown").slideDown("slow");
    }
    $("#close").click(function(){
        var cookie = document.cookie;
        var expiration = new Date();
        expiration.setDate(expiration.getDate()+1);
        document.cookie = 'subscription=1;expires=' + expiration + ';path=/';
        $("#pushDown").slideUp("slow");
    });
});

注意:要模拟浏览器刷新,请单击运行多次。 jsFiddle link

也许有人知道问题出在哪里?

最佳答案

改变

'subscription=1;expires=' + expiration + ';path=/';

'subscription=1;expires=' + expiration.toGMTString() + ';path=/';

关于javascript - Cookie 在 Safari 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28054699/

相关文章:

javascript - 检索 cookie 值和更改元素样式

javascript - Bootstrap 3 - 远程加载模式创建重复的 javascript 事件

javascript - 以格式显示日期

http - 浏览器 cookie 域如何工作?

javascript - 从 Jquery Mobile 中的控件组中删除特定元素

javascript - 如何计算免费 jqgrid 中用户输入的行总和

jquery - 在 JQuery 中获取本地化语言

php - 在行数据中包含特殊字符

c# - 为什么我的 GET 请求没有捕获任何 cookie?

javascript - 在 javascript 中使用 PHP 值 - 在alert() 中工作,但在 getelementbyid 中不工作