我在一个页面上成功设置了一个带有javascript的cookie,如下所示: .. 我转到这篇文章并从中获取代码: 更新:
**http://techpatterns.com/downloads/javascript_cookies.php**
代码有效..但我只能从一个页面设置和读取我的cookie,当我转到文档根目录时,cookie就不再可用了。
当我在目录
的子文件夹中时,我设置了我的cookie我也试图这样设置:
document.cookie =
"landing_page_ref=" + encodeURIComponent("FBLND1") +
"; path=/; " ;
但我不知道我哪里错了
答案 0 :(得分:2)
基于关闭浏览器并且有到期时间,无法将cookie设置为过期。该功能由用户的浏览器决定。如果他们将其设置为在关闭时清除其Cookie,那么无论到期时间如何,它都将删除您的Cookie。
您最好的选择是将Cookie设置为相对较短的生命周期(例如30分钟左右)并在每个页面视图上刷新该Cookie。这样您就可以在网站停用30分钟后使Cookie过期。这不是一回事,但是因为没有办法强制执行你想要的东西,所以它紧随其后。
答案 1 :(得分:2)
会话cookie(在浏览器关闭时删除)是通过不指定显式到期时间来创建的。
function setSessionCookie(c_name,value,exdays) {
document.cookie=c_name + "=" + escape(value);
}
那就是说,我会用a robust cookie library来处理cookie,而不是试图自己动手。
答案 2 :(得分:0)
有两种类型的Cookie。持久性和会话。使用会话cookie。只要您关闭浏览器,这些cookie就会过期。要将持久性cookie转换为会话cookie,只需跳过过期时间。