cookie 不保存在 IE 中

cookie not save in IE

Cookie 不保存在 IE 中,但在其他浏览器中工作正常。我正在使用 document.cookie .

示例:

function setCookie(name, value, exdays) {
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
    document.cookie = name + "=" + value;
}

function getCookie(name) {
    var i, x, y, ARRcookies = document.cookie.split(";");
    for (i = 0; i < ARRcookies.length; i++) {
        x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
        y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
        x = x.replace(/^\s+|\s+$/g, "");
        if (x == name) {
            return unescape(y);
        }
    }
}

我假设,您正在从本地机器 运行 运行您的脚本并且 none 网页打开时就像 about:blank 打开一样。最近,我遇到了类似的问题。在这种情况下,我的脚本无法在 IE 中存储 cookie,尽管它在所有其他主要浏览器上运行良好。经过一些谷歌搜索后发现 IE 忽略了来自 about:blank 的 cookie。在我将页面上传到远程服务器后,代码神奇地开始工作了。

我已经打开 Google 和 运行 你的代码在 IE9 中运行良好。

我希望您已经在浏览器 (IE) 设置中进行了必要的设置。喜欢下面

  1. 打开 Internet Explorer 9
  2. 单击顶部最右侧的“工具”图标,然后单击 Internet 选项。
  3. 在顶部切换到“隐私”选项卡,然后单击“高级” 按钮。
  4. 允许第一方 Cookie 和第三方 Cookie 并启用会话 Cookies(根据您的要求)。