好主机建站-建站不再是梦想

立即注册开通网站

 

售前咨询QQ:599166136
登录官方论坛:http://bbs.letgo.com.cn/
加入建站技术交流群: 广州维派建站交流①

三谈Iframe自适应高度

    为什么是三谈呢?一是因为这真的是一个被说烂的话题,二是因为太师傅在n年前就写过这篇再谈iframe自适应高度。之所以再提该问题,是因为之前项目中确实遇到了这个问题的方方面面,有必要总结一下。希望对各位有帮助,有错误请指正。

同域、子页面高度不会动态增加

    这种情况最简单,直接通过脚本获取字页面实际高度,修改iframe元素高度即可。但有二点必须注意:

    如果页面内有绝对定位或者没有清浮动的元素,情况有些复杂,不同浏览器处理结果不同,甚至包括Webkit内核的浏览器,具体请看这个Demo。所以你要么进行浏览器检测,要么用Math.max计算一个最大值,要么你想别的方法。

    iframe所包含页面可能非常大,需要很长的加载时间,为此直接计算高度的时候,很可能页面还没下载完,高度计算就会有问题。所以最好在iframe的onload事件中计算高度。这里还要注意的是,IE下必须使用微软事件模型obj.attachEvent来绑定onload事件。而别的浏览器直接obj.onload = function(){}也可以。

以下是代码片段:

(function(){
    var _reSetIframe = function(){
        var frame = document.getElementById("frame_content_parent")
        try {
            var frameContent = frame.contentWindow.document,
                bodyHeight = Math.max
(frameContent.body.scrollHeight,
frameContent.documentElement.scrollHeight);
            if (bodyHeight != frame.height){
                frame.height = bodyHeight;
            }
        }
        catch(ex) {
            frame.height = 1800;
        }
    }
    if(frame.addEventListener){
        frame.addEventListener
("load",function(),false);
    }else{
        frame.attachEvent("onload",function());
    }
})();

 

 

 
[文章评论(0)] [ 点击数:] [打印本网页] [关闭本窗口]  

关注广州维派 你建网站,我来埋单!

网络营销之路 我们与您相伴

 

相关内容
  • 图文网页和门户网页有什么不一样? 2012-09-12
  • 如何做好B2B行业网站页面内容设计留住用户 2012-02-28
  • 用户体验:网站设计常犯的十个错误 2010-10-25
  • 网页设计时必须注意的四件事 2010-10-25
  • 新浪mini音乐网页播放器小插件 2010-10-22
  • 网页设计进度指示器帮助用户预测步骤 2010-10-23
  • 三谈Iframe自适应高度 2010-10-27
  • 打开网页是空白无内容的 2010-08-18
  • 无法进行网页编辑? 2010-03-19
  •  

     

     

    注册用户须知

    免 责 申 明

    粤ICP备12022451号

     关于我们

     联系我们

     如何支付

    广州维派网络科技有限公司

    (即好主机建站)

    LetGo.com.cn 版权所有

     维派互联 (域名)

     数据中心 (空间)

     维信通 (微营销)

     

    2016最新微营销,维信通正式上线,老用户尊享优惠。

    自助建站  智能建站  企业网站建设  永久免费做网站  易邻网

      网络114企业名录  申请友情链接  

    企业网站建设

    安全狗-arp防火墙/ddosf防火墙

    好主机自助建站

    维信通

    维品生活

    克隆网站

    做网站

    智能建站

    智能网站

    企业建站

      

    网站管理