• iframe高度处理【原创】


      以前处理iframe高度的时候,是在每个页面里写两句js,感觉太烦了,今天处理了下,并增加对ff的支持。代码如下:

    /**
     * iframe高度处理
     * @author zxub 2006-09-29
     
    */

    /**
     * 设置iframe高度等于内部页面高度,用于内部页面
     
    */ 
    function setParentHeight(_iframeId)
    {    
        
    if (parent.setIFrameHeight) return;
        
        
    if (window.addEventListener) //firefox
        {       
            
    var _action=function()
            {            
                
    var _iframe=parent.document.getElementById(_iframeId);
                
    if (!_iframe) return;
                _iframe.height
    =_iframe.contentDocument.body.offsetHeight+16;
            }   
            window.addEventListener(
    "load", _action, false);
        }
        
    else if (window.attachEvent) //IE
        {
            
    var _action=function()
            {
                
    if (!parent.document.getElementById(_iframeId)) return;
                parent.document.getElementById(_iframeId).height
    =document.body.scrollHeight;
            }
            window.attachEvent(
    "onload", _action);
        }
    }

    /**
     * 设置iframe高度等于内部页面高度,用于父级页面
     
    */
    function setIFrameHeight(_iframeId)
    {    
        
    if (window.addEventListener) //firefox
        {          
            
    var _action=function()
            {       
                
    var _iframe=document.getElementById(_iframeId);
                
    if (!_iframe) return;
                _iframe.height
    =_iframe.contentDocument.body.scrollHeight;
                _iframe.onload
    =function()
                {
                    
    this.height=this.contentDocument.body.offsetHeight+16;
                }
            }
            window.addEventListener(
    "load", _action, false);
        }
        
    else if (window.attachEvent) //IE
        {
            
    var _action=function()
            {        
                
    if (!document.getElementById(_iframeId)) return;
                document.getElementById(_iframeId).height
    =document.frames[_iframeId].document.body.scrollHeight;
                document.getElementById(_iframeId).onreadystatechange
    =function()
                {
                    
    if (this.readyState=="complete")
                    {
                        
    this.height=document.frames[_iframeId].document.body.scrollHeight;
                    }
                }
            }
            window.attachEvent(
    "onload", _action);
        }
    }

      setIFrameHeight()最简单了,只要在主页面加这么一句就可以了,内部页面就不需要写什么了。

  • 相关阅读:
    hibernate中获得session的方式
    html中meta的介绍
    dwr和spring的整合
    hibernate.hbm2ddl.auto配置详解
    java生成二维码(需导入第三方ZXing.jar包)
    公共语言运行库(CLR)开发系列课程(1):Pinvoke 简介 学习笔记
    SQL case when 遇到null值
    OpenLayers 3 之 地图图层数据来源(ol.source)详解
    公共语言运行库(CLR)开发系列课程(3):COM Interop基础 学习笔记
    公共语言运行库(CLR)开发系列课程(2):Pinvoke 进阶 学习笔记
  • 原文地址:https://www.cnblogs.com/zxub/p/518026.html
Copyright © 2020-2023  润新知