2012-01-13 10 views
0

ie8のモーダルダイアログで100%幅の機能が正しく動作していないかどうかを確認してください。モーダルダイアログ(showModalDialog)のオブジェクトは、ie8の100%幅を受け入れません。回避策?

この簡単なサンプルコードを確認してください。

var retVal = window.showModalDialog(URL,window.self, "dialogWidth=600px;dialogHeight=305px;scroll=yes;status=yes;caption=yes;titlebar=yes;menubar=yes;toolbar=yes;help=yes;resizable=yes;center=yes;");


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

<html> 
    <head> 
    </head> 
    <body> 
     <div id="temp" style="width: 100%; height: 500px; border:1px solid red;"> 
     </div> 
    </body> 
</html> 

このコードを実行してから、ポップアップウィンドウのサイズを変更します。赤いdivは100%ではなく元のサイズのままであることに注意してください。私はffが正しい動作をしていることに気づいた。

ワードアラウンドはありますか?

グレー

答えて

0

あなたはresizeイベントを処理する必要があります。それ以外の場合、ダイアログの幅は変更されません。私は、クロスブラウザのsupprtので、イベント処理を行うためのjQueryを使用し

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.resize.aspx

...

+0

は、私は、resizeイベントを処理したとします。どのようにdivの幅を100%に変更するのですか? –

+0

私もshowModalDialogの問題に遭遇しました...そのため、私は今、通常jQuery UIダイアログを使用しています。 あなたは試してみることができます: _ $(window).resize(function()。temp)。css({'width':$(window).height()});}); _ – blindfold

関連する問題