我正在使用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]将msg发送到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和主体高度设置为“自动” 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中使用它,如果有所作为?

有什么想法可以阻止在父级上接收消息吗?
在演示页面上,这样的混乱似乎会导致向父级发送一条消息

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

但是我似乎没有收到收到的消息(因此它没有调整父级的大小)

最佳答案

这与requirejs有关。

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

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

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

});


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

09-30 19:27