0

我正在使用https://github.com/davidjbradshaw/iframe-resizer

iframeResizer.min.js 在父页面中并且

iframeResizer.contentWindow.min.js 在孩子

$(document).ready(function () {

  iFrameResize({log:true,checkOrigin:false});

});

日志记录似乎显示消息开始正常 - 它像这样开始

[iFrameSizer][主机页面:contentframe] [iFrame.onload] 发送消息到 iframe[contentframe] (contentframe:8:false:true:32:true:true:null:bodyOffset:null:null:0:false:parent:滚动)targetOrigin:* iframeResizer.min.js:11:62

[iFrameSizer][contentframe] 初始化 iFrame ( http://xxxxxxx/ )

iframeResizer.contentWindow.min.js:9:693

[iFrameSizer][contentframe] 父级的 TargetOrigin 设置为:* iframeResizer.contentWindow.min.js:9:693

[iFrameSizer][contentframe] HTML & body height 设置为“auto” iframeResizer.contentWindow.min.js:9:693

[iFrameSizer][contentframe] 启用公共方法 iframeResizer.contentWindow.min.js:9:693

[iFrameSizer][contentframe] 添加事件监听:动画开始

并以

[iFrameSizer][contentframe] 在 iframeResizer.contentWindow.min.js:9:693 上触发事件锁定

[iFrameSizer][contentframe] 向主机页面发送消息 (contentframe:655:748:init) iframeResizer.contentWindow.min.js:9:693

[iFrameSizer][contentframe] 触发事件锁定关闭 iframeResizer.contentWindow.min.js:9:693

[iFrameSizer][contentframe] -- iframeResizer.contentWindow.min.js:9:693

[iFrameSizer][主机页面:contentframe] iFrame 没有响应。检查 iFrameResizer.contentWindow.js 是否已在 iFrame 中加载

我正在尝试在 Moodle 中使用它,如果这有什么不同?

有什么想法可以阻止父母接收消息吗?在演示页面上,messgaing 似乎会导致像这样将消息返回给父级

[iFrameSizer][主机页面]收到:[iFrameSizer]iFrameResizer0:284:1588:init

但我似乎没有收到收到的消息(所以它没有调整父母的大小)

4

1 回答 1

2

这与requirejs有关。

我最终包含了一个 js 文件,其中包含以下代码:

require(['/theme/elegance/javascript/iframeResizer.min.js'], function (iFrameResize) {

iFrameResize({log:true,checkOrigin:false});

});

这似乎以我需要的方式注册 iFrameResize 对象。

于 2017-03-06T16:21:34.443 回答