我的功能片段如下......
function LoadTheDialog($url) {
$dialog = $('<div></div>');
$dialog.html('<iframe id="theDialog" src="' + $url + '" width="530px" height="600px" style="border: 0px;"></iframe>');
$dialog.dialog({ width: 555, modal: true, resizable: false, draggable: false,
open: function (type, data) { $($dialog).parent().appendTo("body"); }
}).dialog('widget').position({ my: "center", at: "center", of: window, collision: "none" });
};
无论我到目前为止尝试过什么,对话框总是显示在浏览器的左上角......
我错过了一些明显的东西吗?
我还想把静态宽度和宽度包装起来。高度并将其自动调整为加载的远程内容的大小,但这些选项似乎无法按预期工作...
提前感谢。
答案 0 :(得分:1)
好的解决了。
你需要像这样打电话给你:
window.parent.jQuery(>>the html or variable of your dialog<<).dialog({ >>the options<< });
这样它就会被附加到父文档并恢复正常定位。
答案 1 :(得分:0)
您是否尝试过在jQuery UIDialog中设置高度。
我通过将对话框的高度和宽度设置为iFrame的相同来解决问题。
答案 2 :(得分:0)
我使用this solution解决了这个问题:
position: {my: "center", at: "center", of: window.top}