我需要在页面中包含一个iframe,我想计算正确的高度并调整它以避免显示垂直滚动条。但是,如果需要,我想显示水平滚动条。
我发现了几个关于这个问题的帖子,但没有人100%工作。这是我见过的一种非常常见的方法:
$(document).ready(function() {
$('iframe').load(function() {
$("#your-iframe-id").height($("#your-iframe-id").contents().find("html").height()+35);
});
})
<iframe id="your-iframe-id" style="width:100%;border:0;" src="test.php"></iframe>
我用这种方法发现的问题是,使用Safari和Chrome,如果导航到iframe,我访问的页面比前一个页面短,框架的高度仍然是更高的页面。相反,如果您从短页面导航到高页面,一切都运行正常。 Firefox没有这个问题;我没有尝试使用IE和Opera。
非常感谢任何帮助。提前谢谢。
答案 0 :(得分:1)
<script>
var resizeHandle = function()
{
var theFrame = $('.window-content-wrapper', parent.document.body);
theFrame.height($(document).height());
var theFrame = $('.window-content', parent.document.body);
theFrame.height($(document).height());
};
</script>
<iframe id ="home" onResize="resizeHandle()" onload="resizeHandle()" style="width:100%;border:0;" src="test.php"></iframe>