如何使用 postMessage 在顶级窗口之间共享数据
How can I use postMessage to share data between top level windows?
使用Web消息传递(postMessage),可以轻松地在窗口之间发送消息,包括通过Javascript打开的iframe和弹出窗口。但是,用户单独打开的两个窗口是否可以找到彼此并进行通信?
例如,如果用户在浏览器中打开 www.example.com/app.html,然后在同一浏览器的另一个选项卡/窗口中打开同一页面,我希望第二个窗口知道它应该充当第一个窗口的"子窗口"并通过postMessage交换事件流。如何检测另一个打开的窗口是否存在,以及如何获取可以与 postMessage 一起使用的句柄?
我不知道
postMessage
是否可能.
但是,这应该可以通过localStorage
或sessionStorage
(存在于会话范围内)来实现。
写入一个值,然后在另一个窗口/选项卡中读取它,当然假设它们都在同一个域中。
在此处查看更多内容: http://php-html.net/tutorials/html5-local-storage-guide/
希望有帮助。
相关文章:
- 基本html页面和弹出窗口之间的数据交换
- 在 AngularJS 和非 AngularJS 弹出窗口之间共享变量
- 在多个子弹出窗口之间切换控制
- 我想知道是否可以使用 node.js 在窗口之间发送数据
- 选项卡或窗口之间的通信
- 如何在“窗口”之间进行选择.URL.createObjectURL()' 和 'window.webkitURL.cre
- 两个窗口之间的 Websocket 通信
- postMessage() iFrame 和/或弹出窗口之间的 ie6/7 替代品
- 窗口之间有什么区别.主干网中的视图名称和视图名称.js
- 下拉菜单和 AJAX 窗口之间的 jquery 冲突
- 如何使用 postMessage 在顶级窗口之间共享数据
- 是否可以使用 JQuery 或其他方法在两个浏览器窗口之间拖放一些内容
- 两个浏览器窗口之间的通信:弹出窗口和父窗口
- 弹出窗口和浏览器操作窗口之间的chrome.storage
- 在窗口之间切换Selenium Webdriver Internet Explorer
- 浏览器选项卡和窗口之间的区别
- 在不同的javascript窗口之间交谈
- 如何在Protractor中比较两个窗口之间两个元素的值
- 如何在浏览器选项卡/窗口之间进行通信
- ExtJS 5-在窗口之间传递参数