资源描述
更据嵌套页面框架自动调整大小的问题
xtb16341 [楼主]
新手上路
帖子
5
体力
12
威望
0
离线
1206 天
· 发短消息
· 加为好友
1# 大 中 小 发表于 2006-12-11 01:12
<script type="text/javascript">
function dyniframesize()
{
var x= new Array("test","test1");
for(i=0;i<x.length;i++)
{
var dyniframe = document.getElementById(x[i]);
dyniframe.style.display="block"
dyniframe.height = dyniframe.Document.body.scrollHeight + 5;
dyniframe.width = dyniframe.Document.body.scrollWidth + 5;
}
}
function jiaohu()
{
var dyniframe=document.getElementById("test");
dyniframe.src="uu.htm";
dyniframesize()
}
function huanyuan()
{
var dyniframe=document.getElementById("test");
dyniframe.src="aa.htm";
dyniframesize()
}
</script>
<body onLoad="dyniframesize()">
<table>
<tr><td><input type=button value=交换 onClick="jiaohu()" />
<input type=button value=交换 onClick="huanyuan()" /></td></tr>
<tr valign="top">
<td>
<iframe id="test" name="test" src="aa.htm" scrolling="no" frameborder="0"></iframe>
</td>
<td><iframe id="test1" name="test1" src="uu.htm" scrolling="no" frameborder="0"></iframe>
</td>
</tr>
</table>
</body>
代码是可以实现框架大小自动调整,但是当我改变框架里面嵌套的页面的时候,就是改变 test的 src的页面时。如果嵌套的页面大小比前张页面小的话,框架的大小就不会改变一定要刷新一下才会改变,各位老鸟帮忙一下,如何让他不刷新,就可以当我改变src的页面时会自动调整大小
积分
12
阅读权限
10
在线时间
0 小时
注册时间
2006-12-4
最后登录
2006-12-11
查看详细资料
TOP
根据内容自动调整iframe框架高度
有时为了方便使用Iframe,但被潜入的页面长度不是固定的,显示滚动条不仅影响美观还对用户操作带来不便,自动调整高度可以解决这个问题。^_^
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;
你的意思是不是"怎么能让iframe页内框架的大小根据在框架内显示网页内容,如文字内容等的大小而定?"
如果是这样的话 有几段代码可以帮你:
iframe自适应高度和宽度
方法1
将myframe换成 自己iframe的name即可.
自适应高度高度
<iframe name="myframe" src="myframe.htm" frameborder="0" scrolling="auto" width="100%" height="100%" onload="document.all['myframe'].style.height=myframe.document.body.scrollHeight" ></iframe>
自适应高度宽度
<iframe name="myframe" src="myframe.htm" frameborder="0" scrolling="auto" width="100%" height="100%" onload="document.all['myframe'].style.width=myframe.document.body.scrollWidth" ></iframe>
方法2,用javascript动态调整iframe的高度:
这里我提供一个兼容IE/NS/Firefox的javascript脚本实现动态调整iframe的高度.如果需要调整宽度的话,原理是一样的,本文不加详述.
首先,在你的主页面上必须包含以下这段javascript代码:
<script language="Javascript">
var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
//extra height in px to add to iframe in FireFox 1.0+ browsers
var FFextraHeight=getFFVersion>=0.1? 16 : 0
function dyniframesize(iframename) {
var pTar = null;
if (document.getElementById){
pTar = document.getElementById(iframename);
else{
eval('pTar = ' + iframename + ';');
if (pTar && !window.opera){
//begin resizing iframe
pTar.style.display="block"
if (pTar.contentDocument && pTar.contentDocument.body.offsetHeight){
//ns6 syntax
pTar.height = pTar.contentDocument.body.offsetHeight+FFextraHeight;
else if (pTar.Document && pTar.Document.body.scrollHeight){
//ie5+ syntax
pTar.height = pTar.Document.body.scrollHeight;
</script>
然后对于主页面用到iframe的地方添加代码:
<iframe id="myTestFrameID" onload="javascript:{dyniframesize('myTestFrameID');}"
marginwidth=0 marginheight=0 frameborder=0 scrolling=no src="xxx.htm" width=200 height=100></iframe>
提问者对于答案的评价:
谢谢你~.~ .
评价已经被关闭 目前有 0 个人评价
相关内容
我们公司主要是代理三菱液晶屏,其主要用于军工,工控,医疗,通信及金融领域,其特点是:..
www.c-
代理经销KYOCERA(京瓷),AUO(友达),LG,PVI(元太),NEC等液晶显示屏及代理台湾AMT触摸屏..
联合爱得液晶屏幕清洁伴侣,送你一个清新的世界,尽情享受工作生活的乐趣吧!
专业供应各种三菱,AUO,奇美,LG,Samsung等品牌LCD液晶屏,并设计,生产各种特别需求的应..
专业液晶显示器回收和电脑液晶显示屏回收,不论好坏全得可要.回收各种电脑整机,电脑配..
北京三星打印机代理维修中心--针对北京地区报修.本单位系正规办公设备维修单位.拥有..
北京空调维修中心成立于1993年,是北京市早期成立的专门从事空调维修. 多年来,本着信..
展开阅读全文