2012-04-02 8 views
1

jQueryダイアログの 'dialogresize'イベント中にコンテンツdivの高さを設定すると、divの高さは変更されません。dialogresizeイベントでのjQueryダイアログコンテンツのサイズ変更

は、例を参照してください:

<div id='myDialog'> 
    <p>some text</p> 
    <div id='resizeToParent' style='overflow: scroll'> 
     <div style="background: #ffc; width: 100px; height: 200px;"></div> 
    </div> 
<div> 

http://jsfiddle.net

を、私は、ダイアログ内の残りの利用可能なスペースの100%を取るための 'resizeToParent' のdivをしたいです。これをする;私はdialogresizeに関数をバインドし(副作用としてdivの内側と内側のdiv内の親の高さを表示する)、divの高さを設定します。

$('#myDialog').bind("dialogresize", function (event, ui) { 
$('#myDialog #resizeToParent') 
     .css('height', $('#myDialog').css('height') - 200); 

ただし、 'resizeToParent' divの高さは変更されません。私は間違って何をしていますか?

答えて

1

チェックこのフィドル:http://jsfiddle.net/S3FQv/

ソリューション:親の計算高さに読み取るため.height()の代わり.css('height')を使用してください。

+2

ありがとうございました。これは私にはとても分かりやすいようです。なぜなら、css(height)は最後に "px"という文字列を返すからです。ドー! –

関連する問題