JQuery Cookie在1分钟后过期

时间:2015-02-08 06:38:38

标签: javascript jquery cookies

有谁知道我怎么设置cookie在1分钟后过期?我已经在我的代码中设置了cookie过期但它似乎没有工作......有人可以帮我解决吗?它是什么?最好为我编写完整的代码或小提琴,因为我不知道代码对不起。在此先感谢您的帮助。 在这里我的小提琴:http://jsfiddle.net/Garfrey/3Lzytvqy/4/

function showHide(setCookie) {
    var shID = $(this).data("showhide")
      , $shEl = $("#" + shID)
      , $showHide = $("#" + shID + '-show')
      ;

    if ($shEl.is(":hidden")) {
        if (setCookie !== false) {
            jQuery.cookie("showhide-" + shID, 1);
        }
        $showHide.hide();
        $shEl.show();
    } else {
        if (setCookie !== false) {
            jQuery.cookie("showhide-" + shID, 0);
        }
        $showHide.show();
        $shEl.hide();
    }
}

jQuery(document).ready(function () {
    $("#example-show").on("click", showHide);
    if (jQuery.cookie("showhide-" + "example") == '1') {
        showHide.call($("#example-show").get(0), false);
    }
});

var date = new Date();
var minutes = 1;
date.setTime(date.getTime() + (minutes * 60 * 1000));
$.cookie("example", "foo", { expires: date });  

1 个答案:

答案 0 :(得分:2)

以下是您的代码的简化版本:
我不知道预期的行为,因此这是我能提供的帮助。

我相信如果你追踪下面的代码,你可以轻松地将它与你的代码集成 确保包含jquery cookie js。

$('div#set_cookie').click(function(){
    var date = new Date();
    date.setTime(date.getTime() + (5 * 1000)); // 5 seconds
    $.cookie('test', 1, { expires: date });

    $('div#log').html('<b>cookie has been set! expires : '+date+'</b>');
});

$('div#check_cookie').click(function(){
    var cookieValue = $.cookie("test");
    if (cookieValue){
        $('div#log').html('valid cookie');
    }else{
        $('div#log').html('expired cookie');
    }

});

<强> jsfiddle