2012-02-06 12 views
1

親/コンテナページと同じドメイン/プロトコル内のiframeにaspx Webページをロードしています。 Iframe内のコンテンツの高さがiframe自体よりも高くなることがあります。私はIframeにスクロールバーを表示したくありません。エレメントの高さに基づいてiframeの高さを動的に変更するにはどうすればよいですか?

iframeに含まれるaspxページ内のラッパー 'div'タグに基づいて、Iframeの高さのサイズを変更する必要があります。 以下は、私がこれを達成するために書かれていたjqueryのです:

$("#TB_window", window.parent.document).height($("body").height() + 50); 

「TB_window」 - インラインフレームが含まれているのdiv。

'body' - iframe内のaspxの本体要素です。

このスクリプトはiframeコンテンツに添付されています。私は親ページからTB_window要素を取得しています。 これはChromeで問題なく動作しますが、FirefoxではTB_windowが崩壊します。 私は本当に混乱している/なぜそれが起こるのか分からない。

誰も私が状況をより良く処理できる方法についてアドバイスを提供できますか?差はそれほど大きくない場合には あなたのヘルプは非常にあなたが

このウィンドウのサイズを変更しないCSSクラスに

overflow:hidden 

を追加することができますが、可能性があり おかげ

+0

http://stackoverflow.com/questions/754519/how-does-the-diggbar-dynamically-resize-its-iframes-height-based-on-content-返信をありがとう... – Neha

+0

親ウィンドウの高さ全体にiframeを表示する方法を説明していたようです。私の場合は、親ウィンドウの周りをドラッグ可能な「モーダル」ウィンドウに似ています。 – karry

答えて

0

を理解されるであろう何検索しています。

+0

私はすでにそれを行っています...空白がiframe境界を越えていても隠していますが、コンテンツが境界/プリセットの高さを過ぎるとiframeを展開しません – karry

2

あなたはまた、

document.domainを= document.location.hostnameクロスブラウザのために使用し、あなたのiframe

<iframe id="iframe" src="xyz" onload="FrameLoad(this);" 
    onresize="FrameLoad(this);" scrolling="no" frameborder="0"> 
    </iframe> 


    function FrameLoad(ctrl) { 
    var the_height = ctrl.contentWindow.document.body.scrollHeight; 
    $(ctrl).height(the_height) 
} 

にいくつかのイベントを管理する使用する必要があります。親ページと子ページの両方で

関連する問題