我在我的网站顶部有一个栏,用来宣布公告(比如stackoverflow如何使用新的徽章等)。我使用的代码如下
html
<div id="announcement_popup" title="Special Announcement" style="display:none;">
<h3>Announcement</h3>
<a href="#" id="closeit">Close</a>
</div>jquery
$("#announcement_popup").fadeIn("slow");
$("a#closeit").click(function() {
$("#announcement_popup").fadeOut("slow");
return false;
});这一切都很好,但我希望能够使用jquery cookie插件设置cookie,这样当用户关闭栏时,它将在x小时/天内不会再次显示。我对如何做到这一点感到困惑。
谢谢
发布于 2010-12-06 19:45:02
假设你想把它隐藏7天,它看起来像这样:
if(!$.cookie('hideTopBar')) $("#announcement_popup").fadeIn("slow");
$("a#closeit").click(function() {
$.cookie('hideTopBar', 'true', { expires: 7 });
$("#announcement_popup").fadeOut("slow");
return false;
});在这里,我们检查cookie最初是否设置为任何非空字符串,如果设置为非空字符串,则根本不要淡入条。在点击处理程序中,我们将相同的'hideTopBar' cookie设置为任何非空字符串,'true'可以是使用expires选项7天的well...and的任何其他值。
expires需要几天的时间(它可以是零头!,例如一个小时的1/24 ),因为这是你想要的最多的common...if,所以你也可以自己计算Date并直接传递给它。
https://stackoverflow.com/questions/4366028
复制相似问题