当前位置:编程学习 > JAVA >>

iframe在ie9 ie8 ie7 ie6 360 firefox中自适应高度

以下代码是iframe在ie9 ie8 ie7 ie6 360 firefox中自适应高度的。这个问题曾经折腾我很久,现在终于解决了,现在和大家分享一下。

下面红色代码必须。

//ie9则用下面js代码可以让iframe自适应高度

        function iframeResize(iframe) {

          var idocumentElement = iframe.contentWindow.document.documentElement;
           if(navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion .split(";")[1].replace(/[ ]/g,"")=="MSIE9.0")
         {
           try {
         
           if (idocumentElement.scrollHeight > 560) {
                iframe.height -= 5;
                iframe.height = idocumentElement.scrollHeight;
           }
           else {
                iframe.height = 560;
          }
        }
        catch (e) {
            window.status = 'Error: ' + e.number + '; ' + e.description;
        }
 }
   }

 

//ie9通过iframeResize(iframe)方法自适应高度,其他浏览器通过height = document.frames(this.name).document.body.scrollHeight。这段话必须写在onload中,否则无效。

 

<iframe src="<%=basePath%>qt/history!showUiById.action?id=<s:property value="#parameters.id"/>&flag=<s:property value="#parameters.flag"/>" width="770"  frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="no" allowtransparency="yes" name="2"  onload='if(navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion .split(";")[1].replace(/[ ]/g,"")=="MSIE9.0"){iframeResize(this);}else{height = document.frames(this.name).document.body.scrollHeight}'></iframe>


作者:wangxiaojing123
补充:web前端 , JavaScript ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,