2011-10-19 6 views
3

iframeのコンテンツがマスターページのasp.netサイトである場合、iFrameコンテンツの高さを設定するにはどうすればよいですか?すべてのブラウザのiFrameコンテンツの高さを設定するにはどうすればよいですか?

誰でもjQueryプラグインを知っていますか?ボディのonload()

ボディのonload = "のresizeFrameでそれを呼び出す

更新 これはIEで正常に動作しますが、クロムに失敗し、Firefoxの

function resizeFrame(f) { 
     f.style.height = f.contentWindow.document.body.scrollHeight + "px"; 
    } 

(document.getElementById( 'MainIFrame')) "

のiframeコード

 <iframe id="MainIFrame" class="autoHeight" runat="server" marginwidth="0" style="margin: auto; " 
       frameborder="0" width="100%" scrolling="no" > 
       </iframe> 
+0

詳細情報は 'いいだろうためにスクリプトの動作:)' –

+0

は、いくつかのコードを使用して更新...私は同じ高さを持っている私のiframeが好きページ内 – Zeus

+0

を参照してください:http://stackoverflow.com/questions/247128/how-to-auto-size-an-iframeに加えて、その件に関する他の回答。 –

答えて

2

すべてのブラウザ

<script type="text/javascript" language="javascript"> 
     function resizeIframe(dynheight) { 
      try { 
       var f = document.getElementById("autosizeframe"); 
       document.getElementById("autosizeframe").height = parseInt(dynheight) + 10; 
       if (f.contentDocument) { 
        f.height = f.contentDocument.documentElement.scrollHeight + 30; //FF 3.0.11, Opera 9.63, and Chrome 
       } else { 
        f.height = f.contentWindow.document.body.scrollHeight + 30; //IE6, IE7 and Chrome 

       } 
      } 

      catch (err) { 
       alert('Err: ' + err.message); 
       window.status = err.message; 
      } 
     } 

     window.onload = function() { 
      var height = document.body.scrollHeight; 
      resizeIframe(height); 

     };         

    </script> 
関連する問題