在网上找了很多用javascript动态调整iframe高度,都是不行
如:
<script language="Javascript">
var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
//extra height in px to add to iframe in FireFox 1.0+ browsers
var FFextraHeight=getFFVersion>=0.1? 16 : 0 function dyniframesize(iframename) {
   var pTar = null;
   if (document.getElementById){
     pTar = document.getElementById(iframename);
   }
   else{
     eval('pTar = ' + iframename + ';');
   }
   if (pTar && !window.opera){
     //begin resizing iframe
     pTar.style.display="block"
    
     if (pTar.contentDocument && pTar.contentDocument.body.offsetHeight){
       //ns6 syntax
       pTar.height = pTar.contentDocument.body.offsetHeight+FFextraHeight; 
     }
     else if (pTar.Document && pTar.Document.body.scrollHeight){
       //ie5+ syntax
       pTar.height = pTar.Document.body.scrollHeight;
     }
   }
}
</script>
这些方法一开始加载页面是正确的,但是我的内容页面试动态增加高度的,就是添加页面,如计划可以添加很多任务,因为不知道要添加多小条

解决方案 »

  1.   

    在子页面里面执行。function AutoIframeHeight()
    {
        var aFrms = parent.document.getElementsByTagName("IFRAME");
        var fid ;
        for(i=0;i<aFrms.length;i++)
        {
            if(aFrms[i].contentWindow == window)
            {
                fid = aFrms[i].id;
                break;
            }
        }
        if(fid==null)
            return;
            
       var h;
        
         
        h = document.body.scrollHeight + 20;
        
     
        if(h<520)
        {
            h=520;
        }
       
         parent.$(fid).style.height = h;
         
         parent.$('TabPageContent').style.height = h;
     
    }
      

  2.   

    <script type="text/javascript">
     var iframeids=["center"] var iframehide="yes" function dyniframesize() 
     {
      var dyniframe=new Array();
      
      for (i=0; i<iframeids.length; i++)
      {
       if (document.getElementById)
       {
       
        dyniframe[dyniframe.length] = document.getElementById(iframeids[i]);
        if (dyniframe[i] && !window.opera)
        {
         dyniframe[i].style.display="block"
         if (dyniframe[i].contentDocument && dyniframe[i].contentDocument.body.offsetHeight) 
          dyniframe[i].height = dyniframe[i].contentDocument.body.offsetHeight; 
         else if (dyniframe[i].Document && dyniframe[i].Document.body.scrollHeight) 
          dyniframe[i].height = dyniframe[i].Document.body.scrollHeight;
        }
        
       }
      
       if ((document.all || document.getElementById) && iframehide=="no")
       {
        var tempobj=document.all? document.all[iframeids[i]] : document.getElementById(iframeids[i])
        tempobj.style.display="block"
       }
      }
     } if (window.addEventListener)
     window.addEventListener("load", dyniframesize, false)
     else if (window.attachEvent)
     window.attachEvent("onload", dyniframesize)
     else
     window.onload=dyniframesize
    </script> 希望对你有用 ~