javascript - 无法使用 Chrome 在 Iframe 内调用函数或 postMessage

标签 javascript google-chrome iframe

大家好,

我拼命尝试调用 Iframe 内的函数几个小时但没有成功。

这是我拥有的两件事(在 Safari 上工作),父代码:

window.frames['map-frame'].Test();

document.getElementById('map-frame').contentWindow.postMessage("test", '*');

框架代码:

window.Test = function ()
 {
  alert("1");
 }

window.receiveMessage = function (event)
{
  alert("2");
}
addEventListener("message", receiveMessage);

正如我所说,它适用于 Safari 中的两种解决方案,但不适用于 Chrome。这两个文件都在我的网络服务器上(我已经看到 Chrome 中可以阻止本地调用)。我几乎没有尝试过在 Stackoverflow 和 Google 上找到的任何东西,但没有任何效果。

有人遇到过同样的问题吗?有人知道技巧或可以尝试的东西吗?

提前感谢各位

最佳答案

https://stackoverflow.com/a/40407241/3316068

William Littlefield 的这个解决方案对我有用。另外,在调用框架中的函数之前,请确保框架已完全加载。

关于javascript - 无法使用 Chrome 在 Iframe 内调用函数或 postMessage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44097139/

相关文章:

javascript - Highcharts - 强制显示 x 轴中的类别,即使没有数据

javascript - 错误处理响应 : TypeError: a. 替换不是函数 'With a catch'

javascript - .hover() Jquery 需要帮助

javascript - 为什么 navigator.media 设备只能在 localhost :9090? 上正常工作

javascript - chrome 检查器中有没有办法生成 dom 选择器

javascript - 希望用户能够确定 Chrome 扩展的 css/js 应用于哪些 URL

javascript - 更改 iframe 的内容

javascript - 未发送 XMLHttpRequest 发布数据

javascript - 如何将 div 连接到 iframe 中用于搜索站点的数据 url

html - 使广告易于访问且不向屏幕阅读器显示