首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用postmessage刷新iframe的父文档

使用postmessage刷新iframe的父文档
EN

Stack Overflow用户
提问于 2010-09-27 07:47:01
回答 1查看 31.7K关注 0票数 28

我有一个greasemonkey脚本,它打开一个iframe,其中包含一个来自不同子域的表单作为父页面。

我希望在表单提交后iframe刷新时刷新父页面

当iframe刷新时,我可以执行一个函数,但是我不能让该函数影响父文档。

我知道这是由于浏览器安全模型的原因,我一直在阅读关于使用postMessage在两个窗口之间通信的文章,但我似乎不知道如何使用它向父窗口发送重新加载调用。

任何关于如何做到这一点的建议都将是非常有帮助的

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-01-15 03:08:21

使用:

代码语言:javascript
复制
window.parent.postMessage('Hello Parent Frame!', '*');

注意'*‘表示“任何原点”。如果可能,您应该将其替换为目标原点。

在父框架中,您需要:

代码语言:javascript
复制
window.addEventListener('message', receiveMessage, false);

function receiveMessage(evt)
{
  if (evt.origin === 'http://my.iframe.org')
  {
    alert("got message: "+evt.data);
  }
}

将"my.iframe.org“替换为iFrame的原点。(您可以跳过来源验证,只是要非常小心地处理您获取的数据)。

票数 66
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3800309

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档