2015-02-08 62 views
0

是否有人知道我如何在1分鐘後設置cookie過期?我在代碼中設置了cookie過期,但它似乎不工作......任何人都可以幫助我解決這個問題嗎?寫完整的代碼或小提琴給我,因爲我不知道代碼抱歉。預先感謝您的幫助。 這裏我的小提琴:http://jsfiddle.net/Garfrey/3Lzytvqy/4/JQuery Cookie在1分鐘後過期

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

這裏是你的代碼的簡化版本:
我不知道預期的行爲,因此,這是像我可以提供幫助。

我相信,如果您追蹤下面的代碼,您可以輕鬆地將它與您的代碼集成。
請確保您包含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

+0

HI taesu,感謝給我這一點,你的代碼是工作..但我din't知道如何與我的函數內合併。你能讓我知道我需要改變合併我的功能還是讓我做小提琴?非常感謝! – kafeng 2015-02-08 07:46:03