iframe:在iframe中重定向后的PostMessage

时间:2016-12-06 09:17:22

标签: javascript html cordova iframe ionic-framework

我的Ionic / Cordova应用程序中有一个iframe。当我做setTimeout(function() { parent.postMessage("error", "*"); },3000); 时,一切正常,我可以在父窗口中检索消息。但是,当iframe中的页面重定向到另一个URL,然后此URL重定向回以前的URL(我的服务器)时,将发出非postMessages(具体来说:我无法在父级中检索它们) - 窗口了。 这是正常的行为吗?我怎样才能实现目标?

在iframe窗口中,我有以下代码:

var eventListenerFunc = function(event) {
    // Checking the origin of the data!
    if (~event.origin.indexOf('http://www.domain.de')) {
      if(event.data == 'success'){
        ...
        $ionicHistory.goBack();
        deleteEventListener();
      } else if(event.data == 'cancel'){
        ...
        $ionicHistory.goBack();
        deleteEventListener();
      } else if(event.data == 'error'){
        ...
        $ionicHistory.goBack();
        deleteEventListener();
      }
    } else {
      deleteEventListener();
      return; 
    }
  };

  var eventListener = window.addEventListener('message', eventListenerFunc);

在父窗口(在应用程序中)中,我有以下代码:

{{1}}

0 个答案:

没有答案