2013-01-23 39 views
0

到期我有,我想在1小時內碼是過期餅乾一些代碼:做一個cookie在一小時內

function createCookie(name,value,days) { 
    if (days) { 
    var date = new Date(); 
    date.setTime(date.getTime()+(days*60*1000)); 
    var expires = "; expires="+date.toGMTString(); 
    } 
    else var expires = ""; 
    document.cookie = name+"="+value+expires+"; path=/"; 
    } 

    function readCookie(name) { 
    var nameEQ = name + "="; 
    var ca = document.cookie.split(';'); 
    for(var i=0;i < ca.length;i++) { 
    var c = ca[i]; 
    while (c.charAt(0)==' ') c = c.substring(1,c.length); 
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 
    } 
    return null; 
    } 

    sWhere = "http://google.com"; 

    if(!readCookie('viewcheck')){ 
    createCookie('viewcheck',1,1); 
    } else { 
    window.location = sWhere; 
    } 

我怎樣才能使該cookie在一小時內會過期嗎?

+0

如果該函數真的需要幾天並且工作正常,請嘗試通過1/24來獲得一個小時。 –

回答

1

您的函數使用days參數,它只改變分鐘數,而不是幾天,因爲60*1000是60秒(以毫秒爲單位)。 您應該將該參數重命名爲minutes,然後您可以很容易地看到您只需要將小時數乘以60.