HTML5 postMessage没有窗口引用
HTML5 postMessage without window reference
HTML5 postMesssage API允许在打开窗口和打开窗口之间发送消息。但是,它需要参考/链接到接收器窗口。
是否有一种纯粹的客户端JavaScript方式可以在没有服务器帮助的情况下,在相同的doaminame下,由用户(例如Duplicate Tab)打开相同的会话,向所有窗口订阅者广播事件?
目前,我提出了一些想法
- 服务器端通道(通过$_SESSION)和轮询
- JS Cooking更新和轮询(硬饼干播放)
- 本地存储更新和轮询(甚至是最糟糕的)
- WebRTC?(浏览器支持较差)
有没有遗漏API?
顺便说一句,不需要跨域。我想的是同一个域,多个由用户打开。
为谁寻找变通解决方案。
我最终使用window.localStorage(甚至不是sessionStorage),并使用onstorage触发器作为事件处理程序。
某些浏览器(嗯,我指的是IE)上的会话隔离存在一些问题,sessionStorage上的更改可能会也可能不会发送到另一个窗口。同时localStorage做得更好。
相关文章:
- '文档'在子窗口中意外地引用了父窗口
- 为什么当我尝试将函数绑定到自身时,“this”对象仍然引用窗口
- 为什么根据括号的位置来引用窗口或对象?并返回undefined
- 如何在启动之前引用javascript窗口元素
- 为流星重新包装砌体会产生错误“引用错误:窗口未定义”
- 我应该使用 self 还是窗口来引用全局范围
- Ace 编辑器:未捕获的引用错误:窗口未定义
- 重定义对最顶层窗口的引用 (window.top)
- 是否可以在窗口属性上捕获未定义的引用
- 流星.js:引用错误:窗口未定义
- 无法获取未定义或空引用的属性“内容窗口”
- 如何关闭我的弹出窗口并保持在引用页面上的同一位置
- HTML5 postMessage没有窗口引用
- 如何在cookie中存储窗口引用
- 在GWT中使用第三方javascript库(带窗口引用)
- 如何将标签附加到窗口引用
- Extjs从新窗口引用父窗口
- 从具有目标"_blank"的窗体中获取窗口引用
- 在窗口引用上使用JQuery
- 将表单提交到新窗口>显示pdf>父窗口将丢失子窗口引用