javascript - iframe 和父站点之间如何通信?

标签 javascript html ajax iframe

iframe 中的网站不在同一个域中,但两者都是我的,我想在 iframe 和父网站之间进行通信。有可能吗?

最佳答案

使用不同的域,无法直接调用方法或访问 iframe 的内容文档。

您必须使用 cross-document messaging .

父-> iframe

例如在顶部窗口中:

myIframe.contentWindow.postMessage('hello', '*');

在 iframe 中:

window.onmessage = function(e) {
    if (e.data == 'hello') {
        alert('It works!');
    }
};

iframe -> 父级

例如在顶部窗口中:

window.onmessage = function(e) {
    if (e.data == 'hello') {
        alert('It works!');
    }
};

在 iframe 中:

window.top.postMessage('hello', '*')

关于javascript - iframe 和父站点之间如何通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9153445/

相关文章:

javascript - 检查行时从表中的特定列获取数据

javascript - 使用没有ajax的javascript调用C#代码隐藏方法

javascript - 将 JSON 字符串转换为对象并显示为 HTML 表格

尽管返回 false,Javascript 函数仍返回 url 中的哈希值

javascript - 加载内容和单独的内容V/S加载iframe?

javascript - 从 javascript 设置溢出 css 属性

javascript - 如何在所有输入类型 ="file"上传之前附加一个事件来检查文件大小?

html - 边距不会应用于页脚

html - 使用 CSS 和 Javascript 重新设计复选框外观

html - XSL/HTML 表格行数调整