24小时内仅点击一次,显示提示框
Display info box when user clicks only once in 24h
我想显示一个信息框,当用户点击我的网站的任何地方。它的工作非常好,但信息框应该只在24小时内显示一次。所以我需要设置一个cookie,但不幸的是我不知道如何设置。
<script>
document.onclick = function (event) {
alert("Some info box");
};
</script
您可以使用document.cookie
。这里有一篇关于它的文章:https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie。
出于您的目的,您需要这样的内容:
<script>
document.onclick= function(event) {
// Check if the cookie is set
if (document.cookie.indexOf("alert=true") == -1) {
alert("Some info box");
// Set a cookie to indicate the alert has been displayed.
// Expiration time is 60 seconds * 60 minutes * 24 hours
document.cookie = "alert=true; max-age=" + 60 * 60 * 24;
}
};
</script>
你有几件事要做。
- 首先,使用
document.cookie
设置一个cookie,它将包含从现在起24小时的时间戳。这应该在用户第一次点击网页时完成。此时可以显示信息框。 - 然后,在此之后的每一次点击,你应该检查
now
的时间是否超过了cookie的值(这意味着简单地检查自cookie设置以来是否已经过去了24小时)。 - 仅当超过时,显示信息框,并将cookie值从
now
更新为24小时。
我创建了一个小提琴来演示
相关文章:
- 一次显示一个隐藏指令-AngularJS
- 一次显示一个指令AngularJS
- Slding表单不会一次显示一个表单
- 一次显示/隐藏一个Javascript
- 一次显示一个标记-谷歌地图API v3
- 一次显示n个列表元素,jQuery
- 想要在fullcalendar插件的周视图中一次显示3天
- 用JavaScript制作战斗模拟器,无法一次显示整个模拟
- 尝试连续一次显示多个 php 文件
- 如何使用 javascript 一次显示此数组的字符串内容
- 如何保持一次显示一个悬停
- 引导轮播不起作用(一次显示所有图像)
- 在一个页面上一次显示所有“标题”工具提示
- 如何设置仅一次显示通知栏的cookie
- 从上到下的可见图像堆积:有没有办法一次显示
- 枚举内容滑块一次显示两个图像
- 使用 JS 随机化表行,同时一次显示一个表行
- 寻找一个JS滑块插件,它支持一次显示多张幻灯片,以及不同宽度的幻灯片
- 选择项目并一次显示n篇文章
- 一次显示一个DOM元素的淡入/淡出列表