2011-10-31 53 views
1

我有一個正常運作的片段如下...JQuery用戶界面對話框定位中心父

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

必須在你的CSS的東西。 – samura

+0

你是否設法解決這個問題? – Milox

回答

1

好的解決了。

您需要在對話框中這樣調用:

window.parent.jQuery(>>the html or variable of your dialog<<).dialog({ >>the options<< }); 

所以這樣它被添加到母體文件,再返回到正常位置。

0

您是否嘗試過在jQuery UIDialog中設置高度?
我通過將對話框的高度和寬度設置爲與iFrame相同的方式解決了問題。

0

我解決了使用this solution這個問題:

position: {my: "center", at: "center", of: window.top} 
相關問題