2013-12-17 96 views
0

我已經使用jQuery cookie插件設置了一個cookie。我已將Cookie的到期時間設置爲一小時,因此在此之後,Cookie將被刪除。我想通過從cookie本身檢索此信息來顯示剩餘的剩餘時間,直到cookie過期爲止。這可能使用jQuery cookies插件嗎?如果不是有一個雄辯的方式來實現這一目標?檢查過期時間jQuery cookie

我設置這種方式到期:

jQuery.cookie('Cookie', timedCookie, { expires: new Date(+new Date() + (60 * 60 * 1000)) }); 

回答

1

這是不可能得到使用JavaScript一個cookie的有效期。做到這一點的唯一方法是以某種方式存儲過期日期,例如存儲在一個JavaScript變量中或另一個cookie或本地存儲中。

下面是一個例子:

var MINUTES = 1000 * 60; 

var expireTime = new Date(+new Date + (60 * MINUTES)); // store the expiration time 

jQuery.cookie('Cookie', timedCookie, { expires: expireTime }); 

var updateMessage = function(msg){ 
    document.getElementById('time-left').innerHTML = msg; 
}; 

var i = setInterval(function(){ // calculate time difference every ~1 min 
    var timeLeft = expireTime - new Date; 
    if(timeLeft <= 0){ 
     updateMessage('Your session has expired.'); 
     clearInterval(i); 
    } else { 
     updateMessage('You have ' + (timeLeft/MINUTES | 0) + ' minute(s) left in your cookied session.'); 
    } 
}, MINUTES);