2015-10-20 92 views
0

我能够使用jQuery设置cookie并将其重定向到目标页面,但我不知道如何将cookie过期日期设置为少于一天(例如15分钟)。我没能找到解释在plugin documentationjQuery cookie到期时间

这里是我的代码:

$(function() { 
    var COOKIE_NAME = 'splash-page-cookie'; 
    $go = $.cookie(COOKIE_NAME); 
    if ($go == null) { 
     $.cookie(COOKIE_NAME, 'test', { path: '/', expires: 1 }); 
     window.location = "/example" 
    } 
    else { 
     // do nothing 
    } 
}); 

谢谢所有帮助!

编辑: 我能够跳过到期,以及IM精细与但它不是完美的,如果你们有一些想法,我将不胜感激设置cookie里的会话cookie。

回答

4

插件expires选项接受一个数字或日期对象。

如果传递的是数字,它的天数,直到Cookie过期,但如果约会对象传递,它的时间和日期时,Cookie过期,所以你可以做

var expDate = new Date(); 

expDate.setTime(expDate.getTime() + (15 * 60 * 1000)); // add 15 minutes 

$.cookie(COOKIE_NAME, 'test', { path: '/', expires: expDate }); 
1

一每天的分数应该工作,因此,例如有1440分钟,在一天内,所以如果你想要的饼干在15分钟内到期,你可以简单地用1440除以分钟,像这样:

$.cookie('foo', 'bar', {expires: 15/1440}); 

这也将工作几个小时,所以例如,如果你想让cookie在2小时内过期, LD做:

$.cookie('foo', 'bar', {expires: 2/24}); 

第三种选择是传递一个日期对象,像这样:

var expire = new Date(); 

//set expiry to current time plus 15 minutes in milliseconds 
expire.setTime(expire.getTime() + (15 * 60 * 1000)); 

$.cookie('foo', 'bar', {expires: expire}); 

希望这有助于!