1
我對javascript的使用並不是很好,但是我有一個工作正常的工作,但它好像並沒有遵循我設置的6個月到期日期。有人可以幫助排除故障嗎?這是我設置cookie的有效日期時所具有的:javascript cookie上的6個月失效日期
expDate = new Date;
// in the following line, 180 means 180 days.
expDate.setTime(expDate.getTime() + 180 * 24 * 60 * 60 * 1000);
expDate.toGMTString();
function setCookie(name, value, expires, path, domain, secure){
document.cookie= name + "=" + escape(value) +
((expires) ? "; expires=" + expires.toGMTString() : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}
function getCookie(name){........
任何幫助故障排除都是完美的,非常感謝!
更新 - 這裏是整個腳本。我只打電話給一個彈出式窗口來顯示是否有3次頁面訪問,20%和6個月到期日期。把它拼在一起,讓我輕鬆點!
expDate = new Date;
// in the following line, 180 means 180 days.
expDate.setTime(expDate.getTime() + 180 * 24 * 60 * 60 * 1000);
expDate.toGMTString();
function setCookie(name, value, expires, path, domain, secure){
document.cookie= name + "=" + escape(value) +
((expires) ? "; expires=" + expires.toGMTString() : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}
function getCookie(name){
var dc = document.cookie;
var prefix = name + "=";
var begin = dc.indexOf("; " + prefix);
if (begin == -1){
begin = dc.indexOf(prefix);
if (begin != 0) return null;}
else{begin += 2;}
var end = document.cookie.indexOf(";", begin);
if (end == -1){end = dc.length;}
return unescape(dc.substring(begin + prefix.length, end));
}
visits = getCookie('nVisits');
if (!visits) {
visits = 1
};
if (visits == 3)
if ((Math.random() * (100 - 1) + 1) < 20)
{
window.open("https://mypoup.html", "_blank", "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=400,height=400");
}
if (visits < 3) {
++visits;
cookieData = visits;
setCookie('nVisits', cookieData, expDate)
}
你在哪裏調用setCookie函數?並傳遞了什麼參數?另外,如果你使用了'expDate.toGMTString()',那麼在'expires'參數中傳遞'expDate',那麼爲什麼你需要做'expires.toGMTString()'? – Claies
似乎'toGMTString()'已經過時了,不應該再使用了,而是使用'toUTCString()'。也許就是這樣。順便說一下,當你檢查它時,你的瀏覽器對你的cookie有什麼看法? (編輯:是的,最好告訴我們在代碼中調用setCookie) – Kaddath