1.脚本
在调用iframe的页面添加脚本
var FFextraHeight = 0;
if(window.navigator.userAgent.indexOf("Firefox")>=1)
{
FFextraHeight =35;//在火狐下的参数 可以调
}
function ReSizeiFrame(iframe)
{
if(iframe && !window.opera)
{
iframe.style.display = "block";
if(iframe.contentDocument && iframe.contentDocument.body.offsetHeight)
{
iframe.height = iframe.contentDocument.body.offsetHeight + FFextraHeight;//设置iframe在火狐下高度
}
else if (iframe.Document && iframe.Document.body.scrollHeight)
{
iframe.height = iframe.Document.body.scrollHeight;//设置iframe在ie下的高度
}
}
}
2.调用
<iframe src="test.html" scrolling="no" id="iFrame1" frameborder="0" width="475" οnlοad="javascript:ReSizeiFrame(this);"></iframe>
=====================================================================
内嵌框架iframe自适高度终极方案:
<iframe id="frame_content" src="iframe_b.html" scrolling="no" frameborder="0" οnlοad="this.height=100"></iframe>
<script type="text/javascript">
function reinitIframe(){
var iframe = document.getElementById("frame_content");
try{
var bHeight = iframe.contentWindow.document.body.scrollHeight;
var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
var height = Math.max(bHeight, dHeight); //一个ff 一个ie 取大值兼容
iframe.height = height;
}catch (ex){}
}
window.setInterval("reinitIframe()", 200);//定时刷新重取 经测试对cpu 没啥影响
</script>