15

jQuery ダイアログをブラウザーの右端から x ピクセル離して配置したいと考えています。これはとにかく可能ですか?

http://jqueryui.com/demos/dialog/

position オプションにはそのような設定はないようですが、他に方法はありますか?

4

8 に答える 8

16

これにより、ダイアログのdivが固定位置に保持されます

これはIE FFクロムとサファリで私にとってはうまくいきます

jQuery("#dialogDiv").dialog({
    autoOpen: false, 
    draggable: true,
    resizable: false,
    height: 'auto',
    width: 500,
    modal: false,
    open: function(event, ui) {
        $(event.target).parent().css('position', 'fixed');
        $(event.target).parent().css('top', '5px');
        $(event.target).parent().css('left', '10px');
    }

});

ダイアログボックスを開きたいときは、呼び出すだけです

$('#dialogDiv').dialog('open');
于 2012-02-21T16:02:47.307 に答える
9

これらの回答のほとんどは回避策のように思えたので、それを行うための公式の jQuery の方法を見つけたかったのです。ドキュメントを読んだ後.position()、jQuery ウィジェットの初期化で実際に実行できることがわかりました。

$("#dialog").dialog({
    title:title,
    position:{my:"right top",at:"right+100 top+100", of:"body"},
    width:width,
    height:height
})

+100 は、それぞれ右と上からの距離です。

于 2015-06-19T23:11:24.847 に答える
9

ダイアログ ボックスを にするposition:absoluteと、通常のページ フローと同じになり、leftandtopプロパティを使用してページ上の任意の場所に配置できます。

$('.selector').dialog({ dialogClass: 'myPosition' });

myPosition css クラスを次のように定義します。

.myPosition {
    position: absolute;
    right: 200px; /* use a length or percentage */
}

、、、およびプロパティを設定してtop、ピクセルまたはパーセンテージなどの長さを使用できます。leftrightbottom myPosition

于 2010-01-17T00:10:07.373 に答える
3

ここを見てください:http://jqueryui.com/demos/dialog/#option-position

position オプションを指定してダイアログを初期化します。

 $('.selector').dialog({ position: 'top' });

init 後の位置オプションを取得または設定します。

//getter
var position = $('.selector').dialog('option', 'position');
//setter
$('.selector').dialog('option', 'position', 'top');
于 2010-01-17T00:02:03.413 に答える
2

これは、右上隅に 10px のオフセットでダイアログを表示するのに役立ちました: position: "right-10 top+10":

$( "#my-dialog" ).dialog({
    resizable: false,
    height:"auto",
    width:350,
    autoOpen: false,
    position: "right-10 top+10"
});
于 2013-03-04T12:21:42.877 に答える