HTML5 postMessage - 多个消息处理程序,同一页面,会发生什么?

时间:2014-06-11 22:58:37

标签: javascript html5 events messaging postmessage

我有一个父母页面" A"它嵌入了iFrame" B"。它们不属于同一个域。

父窗口" A"帖子到框架" B"我们想登录。框架" B"接收消息,并启动Google的OAuth 2.0流程(javascript)。

框架" B",作为身份验证工作流程的一部分,调用方法 - gapi.auth.authorize(params,callback);

此方法将框架" C"嵌入框架" B",并注册另一个消息处理程序。现在,我们在同一页面上有两个消息处理程序(B)。首先,我们编写了$(window).on(" message",fnc)处理程序,但是现在我们还有一个来自google api的处理程序,它与它的iFrame对话(C)。

这引起了问题和混乱。当消息到达B时 - 会发生什么?谁得到了它?

为清楚起见 - 这里是位于框架中的消息处理程序的代码" B"。

$(window).on('message', function(e) {

          // make sure the origin is what we want.  we LOSE google's events here!
          if ( isSafe( e.originalEvent.data ) ) {
                // do stuff
          }

});

0 个答案:

没有答案