ifram高度自适应,获取iframe元素,控制父页面

本文介绍两种IFrame高度自适应的方法。方法一通过父页面获取子页面的高度并调整;方法二由子页面直接修改父页面IFrame的高度。同时提供了一个简单的ASP.NET环境下IFrame自动调整高度的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
ifram高度自适应,两种方法

方法一:父页面获取子页面高度,改变父页面高度
演示地址:
http://i.thec.cn/jie51886/js/iframe/parent2.html

以下代码加到父页面
<script language="javascript">
//获取iframe子页面的方法,需调用才能实现 (<body onload="doShow()">)
function doShow(){
//获得子页面的高度 document.getElementById("content").contentWindow.document.body.scrollHeight
document.getElementById("content").style.height = document.getElementById("content").contentWindow.document.body.scrollHeight + "px";
//改变iframe的高度
}
</script>
方法二:子页面直接改变父页面高度
演示地址:
http://i.thec.cn/jie51886/js/iframe/parent1.html

以下代码加到子页面
<script language="javascript">
//控制父页面iframe高度的方法
parent.document.getElementById("content").style.height = document.body.scrollHeight +"px";
</script>
为了公司网站的改版,也为了学ASP.NET,这几天花了N多时间在 vs2005/vs2008/asp.net 上面。


目标:母版页+菜单+iFrame的完美解决 
http://www.yxsoft.net  (还是旧内容,未上传)
--------------------
| 母版 title        |
--------------------
|          |              
|index |  iframe 
|menu |  内容页
|          |              
-------------------
| 母版 footer    |
-------------------

点击左面菜单/tree,通过设置tree的navi-url,在右面的iframe动态加载内容页面。
iframe 要按内容页面 自动适应 自动调节高度 。


母版,菜单 比较好解决。

iFrame高度自动调节,好象是个难题耶。
GOOGLE一下,方法一大堆,有点太复杂,都不大行。
vs2008的帮助又动不了,连看个iframe类模型都无办法,菜啊。

试了N回,下面简单代码可以了,asp.net 2.0条件下。

<iframe id="content" name="content" scrolling="no" frameborder="0" width="754px" height="50px"     onload = "height = this.Document.body.scrollHeight + 30;" >   </iframe>

注意事项
1、height设为auto不行的,一定要有一个值
2、this.document引用到是的 iframe所在页面对象,
      this.Document (大写D),才能引用到iframe内含对象

这个方法可能更稳妥
 onload = "height = document.frames(this.name).document.body.scrollHeight + 30"

3、Opera, firefox,这两LAJI就不考虑啦,日后再说



转载于:https://www.cnblogs.com/dudu837/archive/2009/05/27/1490704.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值