JS Cookie设置在2个地方,不覆盖第一个设置
JS Cookie set in 2 places, doesn't overwrite first set
我在2个不同的页面上使用相同的脚本,设置相同的cookie。我的假设是,即使这两个页面的路径(稍微)不同,它们也会简单地覆盖cookie,而不是在其中复制条目。
我的第一页路径是:
example.com/classifieds/businesses
我的第二页路径是:
example.com/classifieds/businesses/search
所以,我的问题是,cookie是否依赖于页面;我可以强制它们覆盖现有的值,而不是将它们自己的特定于页面的值写入cookie吗?
这是我的cookie看起来像重复的:
domain=.example.com; path=/; bdView=column; bdView=detail; domain=.example.com;
设置域名的代码(在头文件中)
var domain = window.location.host.split(/'.(.+)/)[1];
document.cookie = "domain=." + domain;
document.cookie = "path=/";
设置bdView的代码(这是在一个单独的js文件中,我包括在两个页面中)
function setCookie(view) {
switch (view) {
case "column":
document.cookie = "bdView=column";
break;
case "list":
document.cookie = "bdView=list";
break;
case "detail":
document.cookie = "bdView=detail";
break;
}
}
所以,我只是用错了cookie。我认为这个领域&路径只是它们自己的东西,但是你实际上应该用你想要设置的东西来设置它们。
所以,它应该是这样的:
function setCookie(view) {
var domain = window.location.host.split(/'.(.+)/)[1];
switch (view) {
case "column":
document.cookie = "bdView=column; path=/; domain=" + domain;
break;
case "list":
document.cookie = "bdView=list; path=/; domain=" + domain;
break;
case "detail":
document.cookie = "bdView=detail; path=/; domain=" + domain;
break;
}
}
相关文章:
- 将谷歌地图中的平移边界设置为图像覆盖
- jQuery插件在默认设置中覆盖url
- 设置自定义覆盖和多边形的任意z索引顺序
- 如何覆盖羽灯中的默认设置
- 流星铁路由器设置覆盖路线
- 设置 jQuery 滑块的默认值,并在需要时覆盖
- Extjs 4.1.1 覆盖了数字字段的设置值,抛出未捕获的错误
- 在Javascript中,b总是会覆盖a设置(a || b)
- 如何在javascript中覆盖navigator.plugins或如何将其设置为空
- 如何覆盖 JCuQuery/JavaScript 设置的 CSS 高度
- B扩展A:在B中设置将覆盖get
- 可以't使用Angular.js$http设置或覆盖特定标头
- 设置/覆盖背景颜色时的jQuery/CSS优先级
- 设置要覆盖的HTML5视频元素
- 设置javascript变量的Ajax响应覆盖了任何html元素
- 当我需要将页边距底部设置为新值时,它将被覆盖
- 当尝试使用touchOverflowEnabled覆盖jQuery Mobile默认设置时,页面加载了两次
- 覆盖保留字(设置 false = true)
- 顺序主干模型.设置覆盖模型.改变属性
- 自动设置覆盖背景图像的高度