隐藏 div 24hr cookie javascript? [关闭]
Posted
技术标签:
【中文标题】隐藏 div 24hr cookie javascript? [关闭]【英文标题】:Hide div 24hr cookie javascript? [closed] 【发布时间】:2012-05-27 07:48:44 【问题描述】:我想要一个简单的 javascript 代码,它允许我在单击某个 div 元素预定义的时间后隐藏它。为了提供更多信息,我在主页加载时出现了一个建议框。我想要的是,当单击 div 关闭按钮时,它会设置一个 cookie 以保持框 div 关闭 24 小时(1 天)。简单来说,当按下 div 关闭按钮时,box div 会被隐藏 24 小时。注意:我有一个 javascript 允许关闭按钮关闭框,但它会加载每次刷新。
http://i.stack.imgur.com/du1pA.jpg
【问题讨论】:
欢迎来到 Stack Overflow! SO 用于提出问题,而不是要求人们为您编写代码。如果您在上述方面做出了努力并遇到了麻烦,请提出相关问题(显示您的代码),人们会很乐意提供帮助。 听起来更像是一个请求,而不是一个问题本身。 【参考方案1】:虽然 T.J. Crowder 在他的评论中是正确的,*** 不是在这里编写代码的……我为你写了一些代码。这是一个使用 jQuery 的解决方案。在其中,您将使用 <div id="popupDiv">...</div>
作为消息并在其中使用 ID 为“close”的链接来关闭 div。
$(document).ready(function()
// If the 'hide cookie is not set we show the message
if (!readCookie('hide'))
$('#popupDiv').show();
// Add the event that closes the popup and sets the cookie that tells us to
// not show it again until one day has passed.
$('#close').click(function()
$('#popupDiv').hide();
createCookie('hide', true, 1)
return false;
);
);
// ---
// And some generic cookie logic
// ---
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);
这是一个 js 小提琴:http://jsfiddle.net/FcFW2/1/。运行一次,然后再次运行。第二次弹出不显示。
【讨论】:
blah.js 是我保存这些数据的文件吗? 我不确定你的意思?具体是什么数据。如果您的意思是如何处理此代码:创建一个 .js 文件并将其包含在您的页面中。确保弹出窗口和关闭按钮的 id 匹配。 该代码似乎不起作用 嗯,它对我有用:jsfiddle.net/FcFW2/1。确保添加 #popupDiv display: none; 以便弹出窗口最初始终不可见。 这是一个 javascript 链接没有添加,我在隐身模式下查看并认为它现在可以工作了,我非常感激,如果你想看看 www.computersolutions.spruz.com我是关于【参考方案2】:这应该让你开始:http://www.quirksmode.org/js/cookies.html
以下示例使用上述链接中声明的函数。
创建一个 cookie:
// when the div is clicked
createCookie('hideSuggestionBox', 'true', 1);
读取 cookie:
// when deciding whether to show or hide the div (probably on document ready)
if (readCookie('hideSuggestionBox') === 'true')
// do not show the box, the cookie is there
else
// the cookie was not found or is expired, show the box
【讨论】:
以上是关于隐藏 div 24hr cookie javascript? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
CF7 表单提交成功后永久隐藏 Div,直到缓存或 cookie 被清除
切换状态 Cookie 设置成功,但是没有 cookie 存在时的行为呢?