关于javascript:IFrame调用父函数

IFrame call parent function

iframe 是否可以调用父级的函数,即使它们不在同一个域中?
当它们不在同一个域中时,我的实际方法会引发安全错误:

1
2
3
4
5
function test()
{ alert('wow');
}

<iframe src="...."></iframex>

在 iframe 中我会这样做:

1
2
function fin()
{ top.test(); }

非常感谢:)

相关讨论

  • 欺骗stackoverflow.com/questions/4122422/…

您不能直接调用该函数(由于相同的来源策略,但您可以使用 postMessage(如对该问题的回答中所述)并让事件侦听器调用该函数作为响应。

如果您需要支持 Internet Explorer 7 及更低版本,您将有些不走运。


不,你不能。同源政策禁止这样做。

相关讨论

  • 这不是真的。您可以使用 postMessage。我们在我们的应用程序中这样做。因为就像你使用 ie7 一样,你可能会迷路。
  • 这与"在 iframe 中调用函数"不同,"抱歉 🙂
  • 有可能。您可以使用 postMessage 发送一条消息,然后让您的侦听器调用该函数。它不完全相同,但它实现了相同的目标。

以上是关于javascript:IFrame调用父函数的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>