JQuery Dialog Div Height

cwe*_*ton 4 html javascript jquery height

我试图获得一个JQuery UI的对话框的div的高度一旦打开,以便我可以动态设置父的iframe高度.

然而,在添加页脚按钮面板和标题面板之前,它似乎正在返回div的高度.对话框的高度设置为"auto";

$(this).height($('#dialogdiv').height());
Run Code Online (Sandbox Code Playgroud)

我试过,outerHeight和偏移高度也是如此,但得到了类似的结果.

有任何想法吗?

Dou*_*ner 5

div你打电话.dialog()的实际上是嵌入到div的构成,显示实际的jQuery UI的对话框的另一个框架.你想要称之为:

$(this).height( $('#dialogdiv').closest('.ui-dialog').height());
Run Code Online (Sandbox Code Playgroud)

您可能仍然需要使用outerHeight但重要的部分是closest将获得Dialog的外部对话框包装.

如果你的代码看起来像这样开始:

<div id="dialogdiv"> Contents....</div>
Run Code Online (Sandbox Code Playgroud)

打电话.dialog({ options })后会看起来像这样(非常简化):

<div class="ui-dialog ...">
   <div class="ui-dialog-titlebar ..."> ... </div>
   <div id="dialogdiv" class="ui-dialog-content ..."> Contents....</div>
   <div class="ui-dialog-buttonpane ..."> ... </div>
</div>
Run Code Online (Sandbox Code Playgroud)