如何让我的 iframe 在主机网站上自动调整高度?
How to make my iframe auto height adjust on host website?
我正在创建网络小部件,我的客户将它们嵌入到他们的网站上。
iFrame 中的内容可以在运行时发生变化。如何让我的 iframe 像 disqus 的评论线程一样自动调整高度?
由于您是 iframe 的所有者,因此可以在 iframe 域和主机域之间建立通信。您可以使用以下代码
主办方javascript
正在发送消息
ifrm.contentWindow.postMessage("someUniqueMessageId", "*");
收到消息
window.addEventListener('message', function (event) {
if (event.data.hasOwnProperty("someUniqueMessageId")) {
var data = event.data.someUniqueMessageId;
}
});
在 iFrame javascript
window.addEventListener('message', function (event) {
if (event.data == "someUniqueMessageId") {
var foo = 'bar'; // data you want to send to host
event.source.postMessage({ "someUniqueMessageId": foo }, "*");
}
});
我正在创建网络小部件,我的客户将它们嵌入到他们的网站上。 iFrame 中的内容可以在运行时发生变化。如何让我的 iframe 像 disqus 的评论线程一样自动调整高度?
由于您是 iframe 的所有者,因此可以在 iframe 域和主机域之间建立通信。您可以使用以下代码
主办方javascript
正在发送消息
ifrm.contentWindow.postMessage("someUniqueMessageId", "*");
收到消息
window.addEventListener('message', function (event) {
if (event.data.hasOwnProperty("someUniqueMessageId")) {
var data = event.data.someUniqueMessageId;
}
});
在 iFrame javascript
window.addEventListener('message', function (event) {
if (event.data == "someUniqueMessageId") {
var foo = 'bar'; // data you want to send to host
event.source.postMessage({ "someUniqueMessageId": foo }, "*");
}
});