我有以下方法调用iframe load:
function resizeIframe() {
$("#content").css("height", "");
$("#content").css("width", "");
var iFrameHeight = $('iFrame').contents().height();
var iFrameWidth = $('iFrame').contents().width();
$("#content").css("height", iFrameHeight);
$("#content").css("width", iFrameWidth);
}
当调用此文本时,文本下方有很多空白空间,因此iframe高度约为1457px。但奇怪的是,当我添加这样的警报时:
function resizeIframe() {
$("#content").css("height", "");
$("#content").css("width", "");
var iFrameHeight = $('iFrame').contents().height();
var iFrameWidth = $('iFrame').contents().width();
alert($("#content").height()); <-------------this alert
$("#content").css("height", iFrameHeight);
$("#content").css("width", iFrameWidth);
}
添加此提醒后,它适合1050px的内容大小。我很困惑为什么要这样做或如何解决这个问题。任何帮助表示赞赏。
答案 0 :(得分:0)
通常,您需要在父页面中设置iFrame
的大小。如果不这样做,它将采用父容器的整个宽度和高度,并为框架窗口设置此大小。
所以$('iFrame').contents().height()
将返回您已经知道的实际渲染高度。
我不明白你对这些代码的意图。
如果要检查框架页面的原始动态大小,这可能很难。我对此还没有任何想法。
编辑:您可以使用此类脚本来修复动态大小问题。 http://www.dynamicdrive.com/dynamicindex17/iframessi2.htm