是否有一个使用沙盒页面的postMessage的简单示例?

时间:2013-04-09 21:11:39

标签: google-chrome-app

查看此文档中的postMessage示例:http://developer.chrome.com/trunk/apps/app_external.html#postMessage

似乎建议沙箱页面会同步注册事件处理程序,否则它应该如何获得postMessage事件?

我想这与此处的错误有关:https://code.google.com/p/chromium/issues/detail?id=154662 您似乎无法使用窗口回调将postMessage发送到沙盒iframe,但是提到了一种解决方法,其中使用包含沙盒页面的iframe的页面。这里唯一的问题是它仍然不清楚事件如何/何时触发以及它在哪里可见......

这个沙箱的东西看起来非常复杂,围绕它的文档会误导和/或过时。这个例子是否有意义?是否可以在没有收到消息并记录event.source?

的情况下向后台页面发送消息

如何在后台页面中注册事件监听器以响应从沙盒页面发回的消息?这里有很多问题,我所拥有的只是一个破碎的例子。

1 个答案:

答案 0 :(得分:1)

github上chrome-app-samples上的示例更多是您正在寻找的。这是沙盒页面添加事件监听器以响应事件:https://github.com/GoogleChrome/chrome-app-samples/blob/master/sandbox/sandbox.html

以下是使用postMessage的背景页面:https://github.com/GoogleChrome/chrome-app-samples/blob/master/sandbox/mainpage.js

github示例比文档中的示例丰富得多。 https://github.com/GoogleChrome/chrome-app-samples包含了您可能需要做的所有事情的示例。