警报会阻止IE

时间:2018-11-23 10:06:36

标签: javascript

我的确在父窗口和iframe窗口之间用javascript实现了跨窗口通信。

一切正常,但是一旦在父窗口中打开警报窗口,就会在一个超时时间内:

setTimeout(function() { alert('test'); }, 100);

从iframe窗口到父窗口的通信被阻止,直到我关闭警报窗口。

如果警报不是在超时内打开的,则不会阻止iframe和窗口之间的通信,而只会阻塞警报本身,对我来说没事。

有人经历过同样的经历,这怎么解决?

我的代码非常简单:

  • 窗口(父级)

    window.addEventListener('message', receiveMessageFromIFrameFunc);
    iframe.postMessage( textJson, '*');
    
  • iframe

    window.addEventListener('message', receiveMessageFromParentFunc);
    window.parent.postMessage( textJson, '*');
    

是否有解决此问题的解决方案?

警报和警报在一个超时时间内的主要区别是什么,为什么超时警报会阻止整个跨窗口通信?

0 个答案:

没有答案