您现在的位置: 万盛学电脑网 >> 程序编程 >> 网页制作 >> 脚本Html教程 >> 正文

iframe 自适应高度方法

作者:佚名    责任编辑:admin    更新时间:2022-06-22

不带边框的iframe因为能和网页无缝的结合从而不刷新页面的情况下更新页面的部分数据成为可能,可是 iframe的大小却不像层那样可以“伸缩自如”,所以带来了使用上的麻烦,给iframe设置高度的时候多了也不好,少了更是不行,现在,让我来告诉大 家一种iframe动态调整高度的方法,主要是以下JS函数: 
第一种方法:代码简单,兼容性还可以,大家可以先测试下。

复制代码代码如下:
function SetWinHeight(obj) 

var win=obj; 
if (document.getElementById) 

if (win && !window.opera) 

if (win.contentDocument && win.contentDocument.body.offsetHeight) 
win.height = win.contentDocument.body.offsetHeight; 
else if(win.Document && win.Document.body.scrollHeight) 
win.height = win.Document.body.scrollHeight; 



最后,加入iframe,不能丢掉onload属性,当然了,id也必须也函数中的win匹配 

复制代码代码如下:
<iframe width="778" align="center" height="200" id="win" name="win" onload="Javascript:SetWinHeight(this)" frameborder="0" scrolling="no" src="1.htm"></iframe> 


这么的这种也是跟上面的解决方法类似的代码
经典代码 iFrame 自适应高度,在IE6/IE7/IE8/Firefox/Opera/Chrome/Safari通过测试。 
HTML代码: 

复制代码代码如下:
<iframe src="http://www.fufuok.com/" id="iframepage" name="iframepage" frameBorder=0 scrolling=no width="100%" onLoad="iFrameHeight()" ></iframe>Javascript代码: 
<script type="text/javascript" language="javascript"> 
function iFrameHeight() { 
var ifm= document.getElementById("iframepage"); 
var subWeb = document.frames ? document.frames["iframepage"].document : ifm.contentDocument; 
if(ifm != null && subWeb != null) { 
ifm.height = subWeb.body.scrollHeight; 


</script> 



下面这个兼容性更好一些

复制代码代码如下:
<script language="javascript