【发布时间】:2023-03-21 05:10:02
【问题描述】:
我正在为一家销售啤酒的欧盟公司建立一个网站,并且需要一个年龄验证启动画面。这很容易,我已经有了一个。我在页眉中使用了一个轻量级的 cookie 插件(cookie.js 可以在优秀的 http://microjs.com 上找到)。这或多或少是我的设置:
JS(在<head> 元素中)
if (cookie.get("agechecked")) {
document.documentElement.className += " agechecked";
}
CSS
.agechecker { display: block; width: 100%; height: 100%; ... }
.agechecked .agechecker { display: none };
遗憾的是,对于少数访问者,年龄检查无法正常工作。有些人无法通过它,对于其他人来说,它会在每次页面加载后弹出,而对于某些人来说,cookie 只是不起作用,这意味着“记住我”复选框对他们来说已损坏。我想使用另一种方法来至少确保年龄检查不会阻止任何人完全查看该网站。
我只有 javascript 可供我使用,不想使用 cookie。因为我很确定会话的等价物是浏览器关闭后过期的 cookie - 所以这将我的选择限制为......是的,什么?
我正在考虑的替代方案:
- jStorage - 但这依赖于 jQuery 或 Prototype 等框架,这意味着我必须在页面标题中加载 jQuery。那不行;
-
window.name方法,结合 JSON 将数据存储在窗口name属性中,这对我的口味来说有点太 hacky,而且也不会延续到其他选项卡 - 我可以检查推荐人(访问者是否已经在此域的另一个页面上?)这是 90% 的保证他/她通过了年龄检查
我在 stackoverflow 上找不到任何真正有用的信息,但我相信你们中的一些人已经建立了年龄验证。您是如何解决这些问题的?
(编辑:我知道,我应该构建一个实际发布到服务器的表单,我可以在其中以无数种不同的方式存储和检索信息,但是从我这里拿走我必须依赖 javascript。无能为力它)
【问题讨论】:
标签: javascript cookies