2013-10-17 70 views
0

我正在使用durandal和twitter-bootstrap,我有一個頁面,裏面有一個模式彈出窗口。 的模式彈出的代碼是一樣的東西:Durandal:移動模態彈出到頁面頂部

<div id="reportModal" class="messageBox messageBox-fixedSize"> 
    <div class="modal-header">   
    </div>  
    <div class="modal-body" >   
    </div> 
    <div class="modal-footer "> 
    </div> 
</div> 

結果,這在鉻是一樣的東西:

<div id="reportModal" class="messageBox messageBox-fixedSize ui-draggable" data-view="views/Reports/reportWindow" style="position: relative; margin-top: -151.05555534362793px; margin-left: -395.55555534362793px;" data-active-view="true"> 
<div class="modal-header"> 
</div>  
<div class="modal-body"> 
</div> 
<div class="modal-footer "> 

</div> 

的結果有趣的事情它的風格從dialog.js(使用compositionComplete方法)爲durandal更改屬性。

style="position: relative; margin-top: -151.05555534362793px; margin-left: -395.55555534362793px;" 

如果我們去compositionComplete,有關此方法的註釋是: 後「的模式完全由到DOM這個函數被調用,讓你實現做任何最後的修改,如定位或動畫。您可以在context.model上使用getDialog獲取原始對話框對象。「

我的問題是如何根據這種方法添加一個新的位置(頁面頂部)?

任何幫助都被誇大了。

+0

右鍵單擊元素並查找樣式並查看它是如何計算的。很容易破譯... –

+0

我附上了一個圖像的問題。 – Rolando

+0

點擊計算出的選項卡,它會告訴你什麼是優先和分配該風格 –

回答

2

最後我用了compositionComplete

public compositionIsCompleted(){ 
    var styles = { 
     'position': 'absolute', 
     'margin-top': '-360px',    
     'margin-left':'-250px' 
    }; 

    $("#reportModal").css(styles); 
} 

我希望幫助別人。