簡體   English   中英

設置Cookie過期時間。

[英]Setting Cookie Expiration time.

我的主頁上有以下用於彈出窗口的腳本。 它運作良好,只是cookie似乎每天都會重設其自我。 我希望Cookie盡可能在將來過期。 我的問題是我不熟悉javascript和cookie。 有人可以讓我知道我需要更換什么部分嗎? 我已經弄亂了一些,但似乎會使情況變得更糟。

當它位於我的網站( http://www.swissdiamond.us )上時,您可以看到它正在運行(第一次在div加載div,而沒有其他任何加載),但是如果明天返回,則隱藏的div將重新加載。

謝謝你的幫助

<script type="text/javascript">
//<![CDATA[

function createCookie(name,value,days) {
if (days) {
  var date = new Date();
  date.setTime(date.getTime()+(days*24*60*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;
}

function eraseCookie(name) {
createCookie(name,"",-1);
}

 function showModal() {
tb_show('Newsletter Signup','#TB_inline?height=300&amp;width=450&amp;inlineId=promo',false);
}

var visited = readCookie('mypopup');

 if (!visited) {
$(document).ready(function(){
  showModal();
  createCookie('mypopup','no',0);
});
}

//]]>
</script>

您需要更新此行

 date.setTime(date.getTime()+(days*24*60*60*1000));

或者您可以從此處傳遞天數

createCookie('mypopup','no',0); // make the last parameter value as much as you want

在這里您可以根據需要添加更多的日子。 希望這可以幫助。

您的createCookie函數為您設置了到期時間,但是您要傳遞的0作為要到期的天數,因此cookie不會持久。 嘗試這個:

createCookie('mypopup', 'no', 7); // 7 = expires in 7 days, amend as required.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM