iframe自适应高度完美版解决DOM元素高度变化问题
通常做后台的时候,都喜欢用框架,在用frameset的时候,把系统分为左右两块,或者上左右两块不会出现自动高的情况,如果使用了iframe,就要碰上iframe自动高的问题,这不,我现在就折腾上了,可把哥给累着了!
网上搜索”iframe自动高”会有很多的解决方案,我试了很多,但都存在问题,大多只解决了iframe加载完后的静态内容实现的自动高,iframe加载完后,对DOM操作,或者表格挤压引起的高度变化却不起作用.为此郁闷了N久!
如果iframe里面内容不进行DOM操作,可以使用这种最简单的方式:<iframe id="iframe" src="iframe.html" scrolling="no" frameborder="0" onload="this.height=this.contentWindow.document.documentElement.scrollHeight"></iframe>
反之,在iframe页里进行DOM操作,或者表格展现(表格展现如果挤压会改变高度)可以使用下面的方法
JavaScript复制代码
- <iframe id="iframe" src="iframe_b.html" scrolling="no" frameborder="0"></iframe>
<script type="text/javascript"> - function reinitIframe() {
- var iframe = document.getElementById("iframe");
- try {
- var bHeight =iframe.contentWindow.document.body.scrollHeight;
- var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
- var height = Math.max(bHeight, dHeight); iframe.height = height;
- } catch (ex) { }
- }
- window.setInterval("reinitIframe()", 200);//定时去检查iframe的高度,这样保证时时都是自动高了
- <script>
上一篇:asp.net下后台常用分页解决方案的思考
下一篇:判断 iframe 是否加载完成的完美方法
全部评论:
申明:本站部分文章来自网络,由于各种原因对文章的来源无从考究,如果您是“
iframe自适应高度完美版解决DOM元素高度变化问题
”的原作者,若侵犯您的版权,请与我联系!在此请您原谅我的幼稚和无知!联系方法:email:ahuinan@21cn.com QQ:106494262
感谢以下网友对网站提出的建议:
1、感谢“蓝树叶kiss”网友发现一个评论漏洞。(2009-2-28)
2、感谢“陈臣”对程序优化和seo方面的建议。(2009-3-18)
感谢以下网友对网站提出的建议:
1、感谢“蓝树叶kiss”网友发现一个评论漏洞。(2009-2-28)
2、感谢“陈臣”对程序优化和seo方面的建议。(2009-3-18)
文章档案
- 作者:佚名
- 来源:转载
- 日期:2009-9-26 13:47:00
- 点击:726
网友投票(您觉得这篇文章怎样?)
请稍侯......
请稍侯......
文章阅读排行
随便看看
最新评论
- 不錯的東東,
打包demoupload.asp,js部分尾多了一個逗號
有空多交流:QQ 37787553 - 不錯的東東,
打包demoupload.asp,js部分尾多了一個逗號
有空多交流:QQ 37787553 - 站长 好!
- 网站不错<br>不知道URl是用什么生成的?
- update A
set A.OriginSalary=A.OriginSalary+B.AddSalary
from dbo.OriginSalary as A left join dbo.AddSalary as B on A.O_ID=B.O_ID - update A
set A.OriginSalary=A.OriginSalary+B.AddSalary
from dbo.OriginSalary as A left join dbo.AddSalary as B on A.O_ID=B.O_ID - 例子举得不好,为什么不直接用update解决呢?
update set A.OriginSalary=A.OriginSalary+B.AddSalary
from dbo.OriginSalary as A left join dbo.AddSalary as B on A.O_ID=B.O_ID - 例子举得不好,为什么不直接用update解决呢?
update set A.OriginSalary=A.OriginSalary+B.AddSalary
from dbo.OriginSalary as A left join dbo.AddSalary as B on A.O_ID=B.O_ID - 恭喜站长改进 支持
- 改版了? 牛叉
- 网站不错^-^ 多多向站长学习
- 212
- 啊 是