iFrameResizer无法计算iframe

时间:2016-12-19 15:34:00

标签: javascript iframe iframe-resizer

我有一个外部域' domainB'我正在提取内容。 domainB' s脚本中包含的是iframeResizer.contentWindow.min.js

我的域名'域名'包括iframeResizer.min.js,我称之为:

$('iframe').iFrameResize({log:true, checkOrigin:false,
heightCalculationMethod:"taggedElement"});

无论我改变什么,高度计算方法'它对iframe的高度没有任何影响。以下是记录

  

[iFrameSizer] [主页:iFrameResizer0]添加了缺少的iframe ID:iFrameResizer0(http://domainB/)   iframeResizer.min.js:8
  [iFrameSizer] [主页:iFrameResizer0] iFrameResizer0禁用IFrame滚动   iframeResizer.min.js:8   
[iFrameSizer] [主机页面:iFrameResizer0] [init]将msg发送到iframe [iFrameResizer0](iFrameResizer0:8:false:true:32:true:true:null:taggedElement:null:null:0:false: parent:scroll)targetOrigin:*   iframeResizer.min.js:8   
[iFrameSizer] [主机页面:iFrameResizer0] [iFrame.onload]将msg发送到iframe [iFrameResizer0](iFrameResizer0:8:false:true:32:true:true:null:taggedElement:null:null:0: false:parent:scroll)targetOrigin:*

所以看起来它正在运行,没有错误,但它没有效果。有没有更好的方法来实现这一点,实际上会改变iframe的高度?

3 个答案:

答案 0 :(得分:2)

我有同样的问题。在我的情况下,这是因为在框架内的页面(带有iframeResizer.contentWindow.min.js的页面)中有一个外部插件,用于设置此CSS样式:

body,html{height:100%}

我通过在框架内的页面中添加此CSS来修复它:

 body, html {height:inherit !important;}

答案 1 :(得分:1)

如果这是您在日志中看到的所有内容,则脚本不会被加载到域B中,或者域B上的某些其他JS代码正在崩溃并阻止此JS运行。

答案 2 :(得分:1)

我遇到与您完全相同的问题(相同的设置和所有问题),并意识到我的'domaindB'上没有正确包含iframeResizer.contentWindow.min.js

一旦我确定它被包含在内,就可以了 - 并且正在打印更长的日志列表。

和你一样,我假设因为最初的简短日志列表(你引用的)正在打印,这两页正在沟通;然而,事实并非如此。

如果您启用了sourceMaps,则应该会看到来自iframeResizer.contentWindow.min.js

的日志 像这样:

iframeResizer.contentWindow.js:150[iFrameSizer][iFrameResizer0] Initialising iFrame (http://domainB.site) iframeResizer.contentWindow.js:150[iFrameSizer][iFrameResizer0] TargetOrigin for parent set to: * iframeResizer.contentWindow.js:150[iFrameSizer][iFrameResizer0] height calculation method set to "taggedElement" 等等。