Как истечь Cookie, используя Jquery в полночь? - PullRequest
8 голосов
/ 07 января 2011

Я сделал это:

$.cookie("ultOS", (i), {expires:1});

Но срок его действия истекает только на следующий день.

Как мне истечь срок действия cookie в полночь?

Будет ли работать вместо этого?

var date = new Date();
var midnight = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59);
$.cookie("ultOS", (i), {expires: midnight});

Ответы [ 4 ]

10 голосов
/ 07 января 2011

Я думаю, что это будет работать:

var currentDate = new Date();
expirationDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate()+1, 0, 0, 0);
$.cookie("ultOS", "5", {expires: expirationDate});
3 голосов
/ 07 января 2011

В соответствии с последней версией этого подключаемого модуля cookie (при условии, что вы используете именно его: http://plugins.jquery.com/project/Cookie),, вы можете передать обычный объект Date в.

Я не пробовал, но источник плагина довольно прост ....

if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }

Если вы передадите число, оно предполагает количество дней. Если вы передадите дату, это займет.

1 голос
/ 19 мая 2014
var date = new Date();
var midnight = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 23, 59, 59);
var expires = "expires="+midnight.toGMTString();
0 голосов
/ 07 января 2011

Вы можете создать объект Javascript Date со значением сегодня вечером (полночь), а затем установить срок действия следующим образом:

 $.cookie("example", "foo", { expires: date });

Где дата - это объект даты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...