具有相同名称的重复cookie会产生不良行为

时间:2013-03-12 07:36:45

标签: javascript jquery

您好我正在尝试通过将其存储到cookie来保存浏览器状态。由于某些原因,这似乎并不总是按照我想要的方式工作,因为它创建了一个具有相同名称的重复cookie。这就是我的意思:< / p>

enter image description here

这是我用来处理cookie的唯一代码:

$(function () {
var content = $("#content");
var state = $.cookie("layoutState");

if (state === "grid") {
    content.removeClass("content-list").addClass("content-grid");
}

if (state === "list") {
    content.removeClass("content-grid").addClass("content-list");
}

$("#list").on("click", function (e) {
    $.cookie("layoutState", "list", { expires: 7, path: "/" });
    content.removeClass("content-grid").addClass("content-list");
    e.preventDefault();
})

$("#grid").on("click", function (e) {
    $.cookie("layoutState", "grid", { expires: 7, path: "/"});
    content.removeClass("content-list").addClass("content-grid");
    e.preventDefault();
})

})

我正在使用jQuery cookie插件。

有没有人明白问题是什么我一直试图解决它几个小时而没有运气?

1 个答案:

答案 0 :(得分:2)

你可以检查cookie是否存在,删除并创建一个,如:

if( $.cookie("layoutState") ) {
   $.removeCookie('layoutState', { path: '/' });
}
//and create
$.cookie("layoutState", "grid", { expires: 7, path: "/"});