IFrame高度自适应js脚本

来源:互联网 发布:红楼梦网络名词 编辑:程序博客网 时间:2024/05/17 16:11

function SetWinHeight(obj)
{
var win=obj;
if (document.getElementById)
{
if (win && !window.opera)
{
if (win.contentDocument && win.contentDocument.body.offsetHeight)
win.height = win.contentDocument.body.offsetHeight;
else if(win.Document && win.Document.body.scrollHeight)
win.height = win.Document.body.scrollHeight;
}
}
}

<iframe width=”778″ align=”center” height=”200″ id=”win” name=”win” onload=”Javascript:SetWinHeight(this)” frameborder=”0″ scrolling=”no”></iframe>

 

 

本文来自: 脚本之家(www.jb51.net) 详细出处参考:http://www.jb51.net/article/13306.htm

 

/**
* 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.style.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).style.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.style.height=_iframe.contentDocument.body.scrollHeight;
   _iframe.onload=function()
   {
    this.style.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).style.height=document.frames[_iframeId].document.body.scrollHeight;
   document.getElementById(_iframeId).onreadystatechange=function()
   {
    if(this.readyState=="complete")
    {
     this.style.height=document.frames[_iframeId].document.body.scrollHeight;
    }
   }
  }
  window.attachEvent("onload", _action);
 }
}