根据内容动态调整 iframe 高度

Posted

技术标签:

【中文标题】根据内容动态调整 iframe 高度【英文标题】:Dynamically adjust iframe height based on content 【发布时间】:2012-05-21 12:07:13 【问题描述】:

关于如何动态更改 iframe 高度有很多答案。 我试过插件https://github.com/house9/jquery-iframe-auto-height

该插件适用于 iframe 加载,但是,如果内容不重新加载(例如 ajax),高度不会根据 iframe 内容内的变化而动态变化。

我的问题是:如何在内容改变高度时动态改变 iframe 的高度?

【问题讨论】:

我对同样的事情很好奇。我使用了几种方法来获取 iframe 加载时内容的高度,但我现在需要让 iframe 高度动态调整到它的内容。 【参考方案1】:

编辑...好吧,我的朋友告诉我正确的方法。我从主窗口中删除了插件并将这个 jquery 代码添加到 iframe 页面:

_

setInterval(function()
    //console.log($("body").height());
    parent.$("iframe").height($("body").height());
, 100);

但是有一个问题,就是在展开之后,高度并没有改变到它的第一个状态。它会变大,但如果我关闭手风琴,它不会变小......这个问题只在 Chrome 浏览器中......

看起来是 Chrome 错误,因为如果您尝试调整 Chrome 窗口的大小,iframe 会恢复到正常高度。在 IE9 和 FF12 上运行良好。

【讨论】:

以上是关于根据内容动态调整 iframe 高度的主要内容,如果未能解决你的问题,请参考以下文章

根据内部更改的内容动态调整 jQuery Fancybox 的 iframe 高度

如何根据元素高度动态调整 iframe 高度?

Angularjs动态调整iframe高度

使用jQuery动态调整iframe高度,以及jQuery对dom元素的监听

将 iframe 内容高度设置为动态自动调整大小

根据内容调整 iframe 高度