jQueryUI对话框高度增长过高。

4
我有一个jQueryUI对话框,当有人使用“打开”事件来初始化 $('#dialogDiv')。load()调用时,它会加载其内容。

这很棒,但是如果加载的内容很多,对话框会变得非常高。我想要限制高度。 maxHeight jQueryUI 对话框选项似乎非常完美,但它仅在您调整大小时才生效。初始加载将使对话框变得非常高,然后当您尝试调整大小时,它立即缩小到 maxHeight。

如何创建一个动态加载的对话框,使其不会超出某个高度?

2个回答

3
.ui-dialog 类添加 CSS 属性 position:absolute;overflow:hidden 将解决该问题。

1

在初始化时使用height选项...例如-

    <script>
$(function() {
    // a workaround for a flaw in the demo system (http://dev.jqueryui.com/ticket/4375), ignore!
    $( "#dialog" ).dialog( "destroy" );

    $( "#dialog-confirm" ).dialog({
        resizable: false,
        height:140,
        modal: true,
        buttons: {
            "Delete all items": function() {
                $( this ).dialog( "close" );
            },
            Cancel: function() {
                $( this ).dialog( "close" );
            }
        }
    });
});
</script>

在这里你可以看到 "height:140"

这定义了对话框的大小,无论内部有多少数据... 有关事件、选项、方法的更多详细信息,请下载(从此处),提取并查看jquery-ui-1.8.5.custom > development-bundle > docs > dialog.html


是的,我确实尝试了高度,但在加载数据时它保持不变。问题在于我希望高度能够根据数据的正确高度进行调整... - at.
确保您加载的数据没有额外的 <br> 或类似的内容。为此,您可以使用 Mozilla 插件“Firebug”。 使用 Firebug 检查 HTML,我相信您可以找出对话框内部额外空间的原因。 - Kuntal Basu
我不太确定如何理解你的评论,但是我已经在这个类似的问题中找到了解决方案:https://dev59.com/XFHTa4cB1Zd3GeqPRXDR - at.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接