您的位置:首页 > 其它

自动调整框架iframe的高度

2010-05-11 17:14 495 查看
原帖:http://blog.csdn.net/gxf212/archive/2007/01/10/1478724.aspx

为了方便查找,索性转帖:



<script type="text/javascript">

//** iframe
自动适应页面 **//

//输入你希望根据页面高度自动调整高度
iframe
的名称的列表

//用逗号把每
iframe

ID分隔. 例如: ["myframe1", "myframe2"],可以只有一个窗体,则不用逗号。

//定义iframe
的ID

var iframeids=["f1"]

//如果用户的浏览器不支持iframe
是否将iframe
隐藏 yes
表示隐藏,no表示不隐藏

var iframehide="yes"

function dyniframesize()

{

var dyniframe=new Array();




for (i=0; i<iframeids.length; i++)

{

if
(document.getElementById)

{

//自动调整iframe
高度


dyniframe[dyniframe.length] = document.getElementById(iframeids[i]);


if (dyniframe[i] && !window.opera)

{


dyniframe[i].style.display="block"

if
(dyniframe[i].contentDocument &&
dyniframe[i].contentDocument.body.offsetHeight)

//如果用户的浏览器是NetScape


dyniframe[i].height = dyniframe[i].contentDocument.body.offsetHeight;


else if (dyniframe[i].Document &&
dyniframe[i].Document.body.scrollHeight

) //如果用户的浏览器是IE


dyniframe[i].height = dyniframe[i].Document.body.scrollHeight;

}




}

//根据设定的参数来处理不支持iframe
的浏览器的显示问题

if
((document.all || document.getElementById) && iframehide=="no")


{

var tempobj=document.all? document.all[iframeids[i]] :
document.getElementById(iframeids[i])


tempobj.style.display="block"

}

}

}

if (window.addEventListener)

window.addEventListener("load",
dyniframesize, false)

else if (window.attachEvent)

window.attachEvent("onload",
dyniframesize)

else

window.onload=dyniframesize

</script>

#将此段代码放到<head>中即可运行





有时为了方便使用Iframe
,但被潜入的页面长度不是固定的,显示滚动条不仅影响美观还对用户操作带来不便,
自动调整高度
可以解决这个问题。^_^

<SCRIPT LANGUAGE="JavaScript">

function f_frameStyleResize(targObj){

var targWin = targObj.parent.document.all[targObj.name];

if(targWin != null) {

var HeightValue = targObj.document.body.scrollHeight

if(HeightValue < 600){HeightValue = 600} //
不小于600

targWin.style.pixelHeight = HeightValue;

}

}

function f_iframeResize(){

bLoadComplete = true; f_frameStyleResize(self);

}

var bLoadComplete = false;

window.onload = f_iframeResize;

</SCRIPT>

注意:[b]iframe
必须要有name属性,否则无效。
[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: