【问题标题】:Issue with multi tabs with user preference用户偏好的多标签问题
【发布时间】:2016-10-17 11:36:15
【问题描述】:

有没有办法确定打开了多少个浏览器实例并在每个打开的选项卡中更新用户偏好?

我只是在检查假设用户打开了多个标签的问题的解决方案。并且他正在更新其中一个选项卡中的用户首选项,那么所有打开的选项卡都应该可以使用相同的首选项。

请注意,“用户偏好”一词实际上是特定于应用程序的。

例如,假设用户打开了两个选项卡,然后在其中一个选项卡中从法语中选择了英语作为语言,那么如果他单击不同选项卡上的任何操作,则应将语言指定为仅限英文。

由于我们无法清除浏览器缓存,因此必须有一些方法来完成。

【问题讨论】:

    标签: javascript jquery node.js ember.js tabs


    【解决方案1】:

    您可以使用Storage API 来存储您在该浏览器上的用户偏好。根据您的需要选择localstoragesessionstorage

    还有一个名为 StorageEvent 的事件,如果存储发生更改,则会触发该事件。这样您就可以处理交叉表通知。

    有一些 ember 插件封装了 Storage API。看看那些插件。如ember-local-storage

    最后但同样重要的是,还要考虑在服务器和浏览器中存储用户首选项。

    【讨论】:

      【解决方案2】:

      会话 - 是您需要使用或可能使用 cookie 执行的操作。因此,如果用户选择“英语” 然后要么

      a) 在选择时向服务器触发一些 ajax 以将他的会话语言设置为英语

      b) 通过 javascript 或者即使是 ajax 也可以将 cookie 设置为 lanaguage = 'English'。

      然后,当他刷新这些选项卡时,您必须在后续选项卡上将正确的语言发回给他。

      【讨论】:

        猜你喜欢
        • 2015-11-18
        • 1970-01-01
        • 1970-01-01
        • 2017-08-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-21
        相关资源
        最近更新 更多