我有一个这样配置的 jQuery 对话框:
var dialogOptions = {
autoOpen: false,
modal: false,
draggable: false,
resizable: false,
closeOnEscape: false,
minHeight: 450,
minWidth: 800,
height: 450,
width: 800,
create: function() {
$(this).css("maxHeight", 450).css('maxWidth',800);
}
buttons: { "Close": function() { $(this).dialog("close"); }}
};
$("#detailDialog").dialog(dialogOptions);
我使用的 jQuery 版本是 jquery-1.7.2。
我打开对话框以响应这样的 href 点击:
function openDetailDialog(url)
{
$('#detailDialog').dialog({'my':'center', 'at':'center','of':$(this)});
$('#detailDialog').dialog('open').load(encodeURI(url));
}
我正在加载的 div 如下所示:
<div id="detailDialog" style="width:800px;height:450px;overflow-y:scroll;display:none;"></div>
我正在加载到对话框中的页面是一个简单的 HTML 表格,它显示了一个 SQL 数据集。
现在,数据集可以是任意长度,从一条记录到数百条记录不等。这一切都只是花花公子。
邪恶问题: 我似乎无法每次都将 jQuery 对话框限制为相同的大小。第一次按照上面的设置正常显示。此后的每一次,要么太短,要么太长。我尝试的任何方法似乎都无法纠正这一点。
我需要在显示记录集的表格周围放置一个 div 吗?我试过没有用。
我在 SO 上看到很多关于 maxHeight 的内容,但对话框似乎不尊重这个属性。
我正准备告别对话框并恢复到 1990 年代的窗口弹出窗口。