javascript - 如何关闭内容区域并记住它

标签 javascript jquery css cookies

我想要完成的是能够关闭网站中的内容区域,然后在用户下次加载网站时记住它已关闭。 这个网站是我真正需要完成的一个例子。 dailyworth.com

关闭窗口看起来很简单。您拦截鼠标单击并使用 jQuery 函数将该区域的“显示”属性更改为“无”。棘手的部分是如何在用户下次打开网站时记住这一点。

我已经找到了一些信息。例如,这是对类似问题的旧答案,但链接的插件不再存在。 Save html in cookie 这里还有一个可能的solution

我有点困惑:cookie 还是本地存储?对于这样一个简单的功能,必须有一个普遍遵循的最佳实践。你有什么建议?

最佳答案

I'm a bit confused: cookies or local storage?

Cookie 和本地存储几乎是一回事。不同的是cookie从90年代开始就被浏览器支持了。本地存储是新的Javascript API .

我想到了两个不同点:

  • 您不能为 localStorage 数据定义过期时间
  • localStorage 只是客户端

在编写新的 javascript 应用程序时,最好使用新的 API 而不是原始 cookie,因为它更易于使用。您可以附上cookie based fallback所以你的代码也适用于旧浏览器。

编辑: 我玩独立 js 的时间太长了,所以我不记得你没有从服务器访问 localStorage 的权限。所以,如果你想隐藏的 div 来自服务器而不是 javascript,你必须使用 cookie 来隐藏它。

关于javascript - 如何关闭内容区域并记住它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20581649/

相关文章:

javascript - 如何使用包装模块覆盖现在时间

javascript - 这个 JavaScript/jQuery 语法如何工作 : (function( window, undefined ) { })(window)?

javascript - 对数组应用条件

javascript - 使用 XOR 在 JavaScript/HTML5 中绘制以删除旧 Sprite

javascript - jQuery 上传,bootstrap 不断覆盖我的 css

javascript - 通过 post 将 DOM 元素的内容发送到服务器

javascript - JQuery中,如何只对同一个类的当前div执行操作?

css - IE7 页脚问题

jquery - 单击后更改 Jquery 属性

javascript - 将二进制数据从网页传递到 Firefox 扩展