2011-12-07 15 views
1

我有一個Dijit.Dialog的小問題。Dojo和dijit.Dialog不居中

我有一些對話框,它們的尺寸很小,它們顯示在我的屏幕中央,所以沒關係。

但我也有一個高度爲550px的對話框,它不會顯示在我的屏幕中央,而是在底部:瀏覽器滾動到底部然後顯示它。

我只需創建對話框:

var dialogLodge = new dijit.Dialog({ 
    id  : "dialogLodge", 
    style  : "width:700px;height:550px", 
    title  : "Create lodge", 
    href  : "/lodge/create.html", 
    preload   : true, 
    draggable : false, 
    onCancel : function(){ 
     … 
    }, 
    onLoad  : function(){ 
     … 
    }, 
}); 
dialogLodge.startup(); 

所以我不知道爲什麼它不顯示在中心。

如果有人有一個想法,

謝謝。

PS:我使用Dojo 1.6.1,我和1.7太

+0

它在我的機器中工作正常...你爲什麼要通過這種方式調用startup()而不是show()?你使用的是什麼瀏覽器 ?什麼主題? – Philippe

+0

非常感謝,如果我調用show()而不是startup(),它是有效的。 – flopit

+0

好...所以我會把它作爲答案,以便你可以投票,如果你不介意的話;-) – Philippe

回答

3

創建對話框測試它把一個DOM節點在你的頁面與隱藏CSS樣式(顯示:無; visibility:hidden的)。

爲了讓您的對話框可見,您應該使用dialog.show()。

您可以使用dialog.hide()使其再次不可見(並且在您想要顯示的情況下它仍然可用)。