Javascript 设置Cookie过期时间。

Javascript 设置Cookie过期时间。,javascript,jquery,cookies,Javascript,Jquery,Cookies,我有下面的脚本,是我的主页上的弹出窗口。它工作得很好,只是饼干似乎每天都在重新设置自己。我希望cookie尽可能在将来过期。我的问题是,我不熟悉javascript和cookies。有人能告诉我需要换哪一部分吗?我已经弄糟了一些,但似乎让事情变得更糟 当它位于my site()上时,您可以看到它正在工作(第一次在那里加载div,而不是任何其他div),但是如果您明天回来,隐藏的div将重新加载 谢谢你的帮助 <script type="text/javascript"> //<

我有下面的脚本,是我的主页上的弹出窗口。它工作得很好,只是饼干似乎每天都在重新设置自己。我希望cookie尽可能在将来过期。我的问题是,我不熟悉javascript和cookies。有人能告诉我需要换哪一部分吗?我已经弄糟了一些,但似乎让事情变得更糟

当它位于my site()上时,您可以看到它正在工作(第一次在那里加载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.