Javascript 具有用户首选项的多选项卡问题

Javascript 具有用户首选项的多选项卡问题,javascript,jquery,node.js,ember.js,tabs,Javascript,Jquery,Node.js,Ember.js,Tabs,有没有办法确定打开了多少浏览器实例,并在每个打开的选项卡中更新用户首选项 我只是在检查一个问题的解决方案,假设一个用户打开了多个选项卡。他正在其中一个选项卡中更新用户首选项,那么所有打开的选项卡都应该可以使用相同的首选项 请注意,“用户偏好”一词实际上是特定于应用程序的 例如,假设一个用户打开了两个选项卡,然后在其中一个选项卡中,他从法语中选择了英语,然后,如果他在不同选项卡上单击任何操作,则应将语言设置为仅英语 由于我们无法清除浏览器缓存,因此必须有某种方法来完成此操作。会话-是您需要使用或可

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

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

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

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


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

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

a) 在屏幕上,选择向服务器发送一些ajax,将其会话语言设置为英语

b) 通过javascript或ajax将cookie设置为Language='English'

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

您可以使用将您的用户首选项存储在该浏览器上。根据需要选择
localstorage
sessionstorage

还有一个名为的事件,当存储发生更改时会触发该事件。因此,您可以处理交叉选项卡通知

有一些ember插件包装了存储API。看看那些插件。比如

最后但并非最不重要的一点,考虑在服务器和浏览器中存储用户偏好。