iframe 栽入的页面的高度自动化

收藏本信息编号:5 发布时间:2009-06-28 截止日期: 地区:

以前在项目中经常遇到 使用iframe的是时候子页的高度始终调整不好

为此很浪费时间 在网上搜索了哈 部分功能有 于是作了个修改

代码如下:

<script type="text/javascript">

//自动调整iframe框架的方法
function iframeAuto()
{ try
  {
    if(window!=parent)
   {
       //定位需要调整的frame框架(在父级窗口中查找) 
      var a = parent.document.getElementsByTagName("IFRAME");
      for(var i=0; i<a.length; i++)
     { 
          if(a[i].contentWindow==window)
          {
          var h1=0, h2=0;
          a[i].parentNode.style.height = a[i].offsetHeight +"px"; 
          a[i].style.height = "10px";   
          //首先设置高度为10px,后面会修改
           if(document.documentElement&&document.documentElement.scrollHeight)
           { 
             h1=document.documentElement.scrollHeight;
            } 
            if(document.body)
               h2=document.body.scrollHeight;
             var h=Math.max(h1, h2);     
          //取两者中的最大值
         if(document.all) {h += 4;} 
         if(window.opera) {h += 1;} 
         //调整框架的大小
        if(h>540) { a[i].style.height = a[i].parentNode.style.height = h +"px"; } else a[i].style.height = a[i].parentNode.style.height = 540 +"px";
        //这个地方可以根据实际的情况进行修改
        
} } } } catch (ex){} }
     //事件绑定的方法,支持IE5以上版本
   if(window.attachEvent)
    { window.attachEvent("onload", iframeAuto); }
   else if(window.addEventListener) 
      { window.addEventListener('load', iframeAuto, false); }

//-->

</script>

里面大部分的代码都已经注释了 我想应该很详细了

希望对大家有帮助 特别说明 这个写成文件后可以在多iframe的页面使用 互不干扰

发布人信息

[错误报告] [推荐] [收藏][打印] [关闭] [返回顶部]

当前共有0人发表了评论.

推荐信息

最新信息