代码之家  ›  专栏  ›  技术社区  ›  cweston Given

jquery对话框DIV高度

  •  4
  • cweston Given  · 技术社区  · 15 年前

    我试图获取jquery ui对话框的DIV打开后的高度,以便动态设置父级的iframe高度。

    但是,在添加页脚按钮面板和标题面板之前,它似乎返回了DIV的高度。对话框的高度设置为“自动”;

    $(this).height($('#dialogdiv').height());
    

    我已经尝试过了,也尝试了外视和偏移高度,但是得到了类似的结果。

    有什么想法吗?

    1 回复  |  直到 15 年前
        1
  •  5
  •   Doug Neiner    15 年前

    这个 div 你打电话来 .dialog() on实际上嵌入到另一个div框架中,该框架构成了显示的实际jquery ui对话框。您要拨打的电话是:

    $(this).height( $('#dialogdiv').closest('.ui-dialog').height());
    

    你可能还需要玩 outerHeight 但重要的是 closest 它将获得对话框的外部对话框包装。

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

    <div id="dialogdiv"> Contents....</div>
    

    打电话后 .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>