我使用HTML5 canvas元素构建了一个所谓的随机艺术生成器。现在我希望实时控制画布上的视觉动作的按钮位于单独的窗口中。有没有办法做到这一点?我想我需要一个JavaScript来控制两个独立的浏览器窗口。一个JavaScript控制两个独立的浏览器窗口。
2
A
回答
0
您需要跨文档消息的通信API。
您可以使用postMessage
发送和接收消息。
//Post message
window.postMessage('Hello world...', 'http://example.com');
//Bind events
window.addEventListener('message', messageHandler, true);
也不要忘记检查浏览器的支持:
if(typeof window.postMessage === "undefined"){
alert('Your browser doesnt support this functionality');
}
2
您可以使用跨文档的消息传递前提是你的两页来自同一产地(协议,主机名, 港口)。这是它是如何做:
在你的页面应该发送的信息(即与您的按钮),你调用此:
window.postMessage(message, origin);
将发送提供给定(网址原点的消息你其他页面)。
在您receving页面你有这样的功能:
window.addEventListener("message", yourfunction);
其中yourfunction
需要一个参数,e
。 e
是类型MessageEvent事件,并包含以下属性:
- 数据
- 起源
- 源(返回与发送脚本关联的窗口。)
而这一切就是它!
相关问题
- 1. 如何使用JavaScript打开多个独立的浏览器窗口?
- 2. 使用WebSockets控制浏览器窗口
- 3. GeckoFX浏览器 - 控制新窗口
- 4. 独立于浏览器的javascript
- 5. 复制两个窗口上的两个窗口上的控件
- 6. 一旦另一个窗口关闭,更改浏览器窗口
- 7. 使用pyplot绘制并刷新两个独立的窗口
- 8. 两个浏览器窗口之间的通信:弹出窗口和父窗口
- 9. 两个独立的控制台窗口用于输入和输出?
- 10. 制作一个不可调整的浏览器窗口
- 11. 多个浏览器窗口与单独的会话
- 12. 每个浏览器会话超出一次Javascript(窗口)
- 13. 单个缩放在一个浏览器窗口中的两个单独的D3树上,但不同的svg
- 14. 浏览器独立只读?
- 15. 创建一个浏览器独立书签或浏览器插件
- 16. 制作一个Javascript文件浏览器
- 17. JavaScript中的跨浏览器调整浏览器窗口
- 18. 如何创建一个弹出的浏览器窗口,其中包含一个GUI和控制父浏览器窗口
- 19. 如何使整个浏览器窗口
- 20. Vaadin多个浏览器窗口/标签
- 21. socket.io - 多个浏览器窗口
- 22. 浏览器窗口对象的两个getter属性
- 23. 弹出式窗口浏览器控件
- 24. XAML浏览器窗口控件
- 25. C++ /具有多个独立的窗口
- 26. 的Javascript图表填满整个浏览器窗口
- 27. 在javascript中检测浏览器窗口
- 28. 关闭浏览器窗口javascript for blackberry
- 29. JavaScript:使用浏览器打开窗口
- 30. javascript文件浏览器窗口
这对你有帮助吗? –