如果您在制作网页中经常用到Iframe,你一定会发现,它有一个令人头疼的问题,就是高度不能自动随着网页的变化而变化,也就是不能自动适应网页的高度,这个时候在原本非常漂亮的内嵌页面经常会出现Scrollbar,这个问题一直困扰了我很长时间,最后还是通过我酷爱的JavaScript解决了此问题:
代码如下:
function sizeChange()
{
window.status=iframe.document.body.scrollHeight;
document.all.iframe.height=iframe.document.body.scrollHeight;
}
<IFRAME id="iframe" onload="JavaScript:sizeChange()" src='embed.htm' frameBorder=0 width="100%" scrolling=no> </IFRAME>
{
window.status=iframe.document.body.scrollHeight;
document.all.iframe.height=iframe.document.body.scrollHeight;
}
<IFRAME id="iframe" onload="JavaScript:sizeChange()" src='embed.htm' frameBorder=0 width="100%" scrolling=no> </IFRAME>
就这么简单,搞定!
2007/09/10 针对经常有网友提出以上代码不好用,现做出如下改进。
--------------------------------------------------------------------------------------------------------
<script>
function sizeChange()
{
//window.status=iframe.document.body.scrollHeight; //此句代码可有可无,仅仅在下方状态栏显示高度的数值,对效果不起作用。
document.all.iframe.height=iframe.document.body.scrollHeight;
}
</script>
<IFRAME id="iframe" onload="sizeChange()" src='embed.htm' frameBorder=0 width="100%" scrolling=auto> </IFRAME>
function sizeChange()
{
//window.status=iframe.document.body.scrollHeight; //此句代码可有可无,仅仅在下方状态栏显示高度的数值,对效果不起作用。
document.all.iframe.height=iframe.document.body.scrollHeight;
}
</script>
<IFRAME id="iframe" onload="sizeChange()" src='embed.htm' frameBorder=0 width="100%" scrolling=auto> </IFRAME>