xulダイアログを画面の中央に配置
-
05-07-2019 - |
質問
ダイアログで、いくつかの画像のサイズを変更してから、ウィンドウを強制的にsizeToContentにします。次に、ダイアログを画面の中央に配置します。これどうやってするの?
解決
最終結果は、それ自体が移動するウィンドウになりますか?迷惑にしないでください:)
とにかく、window.moveTo
およびさまざまなscreen
プロパティを使用して手動で行う必要があります( https://developer.mozilla.org/en/DOM/window )
これは興味深い例です。ウィンドウの中心ではありませんが、表示されていることを確認します。 http://www.koders.com/javascript/fid3F51B87DFD457428278627805CCA8D39ADC13455.aspxaspx? s = window#L3
他のヒント
また、MDCを中心に検索し、MDCを検索して、それを中央に配置するものを探しましたが、何も見つかりませんでした。これはウィンドウとダイアログの両方で機能します。
var w=(screen.availWidth/2)-(document.getElementById('windowID').width/2);
var h=(screen.availHeight/2)-(document.getElementById('windowID').height/2);
window.moveTo(w,h);
変更する必要があるのは、ウィンドウのID値に対するwindowID
のみです。
すべての画面解像度で機能します。画面の合計幅と高さを半分に分割し、画面の中心を与え、幅と高さの設定を差し引いて考慮しますが、半分に分割してオフセットしますオフセットなしのウィンドウは中央に配置されません。
これがお役に立てば幸いです!
A <dialog>
要素はmoveToAlertPosition()およびcenterWindowOnScreen()コンビニエンスメソッドを定義し、それらをdocument.documentElementでスコープする必要がないようにグローバルスコープにコピーします。