在软件中体悟人生 在人生中感悟软件

专注Web项目设计、实现和管理
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

【经验分享】Iframe自适应其加载的内容高度

Posted on 2008-09-27 17:35  王景  阅读(448)  评论(0编辑  收藏  举报
main.htm:

<html> 
    <head> 
      <meta  http-equiv='Content-Type'  content='text/html;  charset=gb2312'> 
      <meta  name='author'  content='F.R.Huang(meizz梅花雪)//www.meizz.com'> 
      <title>iframe自适应加载的页面高度</title> 
    </head> 
   
    <body>
        <iframe src="child.htm"></iframe>
    </body>
</html>

child.htm:

<html> 
<head> 
  <meta  http-equiv='Content-Type'  content='text/html;  charset=gb2312'> 
  <meta  name='author'  content='F.R.Huang(meizz梅花雪)//www.meizz.com'> 
  <title>iframe  自适应其加载的网页(多浏览器兼容)</title> 
  <script  language=javascript>
  function iframeAutoFit()
  {
      try
      {
        if(window!=parent)
        {
          var a = parent.document.getElementsByTagName("IFRAME");
            for(var i=0; i<a.length; i++) //author:meizz
            {
              if(a[i].contentWindow==window)
              {
                  var h = document.body.scrollHeight;
                  if(document.all) {h += 4;}
                  if(window.opera) {h += 1;}
                  a[i].style.height = h;
              }
            }
        }
      }
      catch (ex)
      {
        alert("脚本无法跨域操作!");
      }
  }
  if(document.attachEvent)  window.attachEvent("onload",  iframeAutoFit); 
  else  window.addEventListener('load',  iframeAutoFit,  false); 
  </script> 
</head> 
<body> 
  <div  style="width:  200;  height:  400;  background-color:  yellow"> 
      iframe  自适应其加载的网页(多浏览器兼容) 
  </div> 
</body> 
</html>