iframe在ie9 ie8 ie7 ie6 360 firefox中自適應高度

來源:互聯網
上載者:User

以下代碼是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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.