了解Cookie过期 - 以及如何设置

时间:2011-11-12 07:08:47

标签: jquery cookies colorbox

我在我的网站上使用cookie在页面加载时显示一次彩色框,然后用户可以选择每次手动加载颜色框。但我不明白的是你如何设置cookie的到期日期。我在这里得到了another question所需的代码,如果有人可以向我解释这里的内容,那将会有所帮助。

var $j = jQuery.noConflict();

$j(document).ready(function(){

   if (document.cookie.indexOf('visited=true') == -1) 
   {
      var fifteenDays = 1000*60*60*24*15;
      var expires = new Date((new Date()).valueOf() + fifteenDays);
      document.cookie = "visited=true;expires=" + expires.toUTCString();
      $j.colorbox({ inline:true, href:"#gallery-nav-instruct"});
   }

});

我认为这意味着Cookie会在15天后到期。我如何将其更改为更长时间?说30或60天?

2 个答案:

答案 0 :(得分:4)

这里要注意的关键是

var fifteenDays = 1000*60*60*24*15;

15 天,每次 24 小时,每次 60 分钟,每次 60 秒。

最后一个因素是1000.所以 fitteenday 变量在15天内保持毫秒的数量。

var expires = new Date((new Date()).valueOf() + fifteenDays);

此声明暗示cookie的到期日期是当前日期加上15天。

因此,在您希望 15 30 天到期的情况下,您只需要将 15 替换为心

答案 1 :(得分:0)

出于所有实际目的,这里有一个简单的表格。

var expires = new Date((new Date()).valueOf() + time);

其中time =以下内容:

  • 1毫秒:时间= 1
  • 1秒:时间= 1000
  • 1分钟:时间= 60 * 1000
  • 1小时:时间= 60 * 60 * 1000
  • 1天(24小时):时间= 24 * 60 * 60 * 1000
  • 1个月平均值(29.6天):时间= 29.6 * 24 * 60 * 60 * 1000
  • 1年(365.24):时间= 365.24 * 24 * 60 * 60 * 1000