it-swarm.com.ru

jqueryui диалоговое расположение

Я использую пользовательский интерфейс JQuery и хотел бы расположить диалог горизонтально по центру, но вертикально над центром, возможно, на фиксированное количество пикселей или на относительное расстояние от верхней части страницы. Есть простой способ сделать это? Похоже, есть только пара предопределенных значений, или я могу использовать точную позицию, но есть ли простой способ сделать это? 

 $("#dialog-form").dialog({
                autoOpen: false,
                width: 630,
                position: 'center',
                modal: true,
                resizable: false,
                closeOnEscape: false

            });
23
Joe Cartano

Используйте параметр положение , чтобы выровнять верх диалогового окна с верхом окна (плюс смещение в пикселях или процентах).

Это должно центрировать диалог горизонтально и расположить его на 150 пикселей сверху.

$("#dialog-form").dialog({
    autoOpen: false,
    width: 630,
    position: { my: 'top', at: 'top+150' },
    modal: true,
    resizable: false,
    closeOnEscape: false
});

В более старых версиях пользовательского интерфейса jQuery использовался массив, содержащий пару координат [x, y] со смещением пикселя от левого верхнего угла окна просмотра (например, [350, 100]).

var dialogWidth = 630;
$("#dialog-form").dialog({
    // ...
    width: dialogWidth,
    position: [($(window).width() / 2) - (dialogWidth / 2), 150],
    // ...
});
74
mr.moses

Это сработало для меня 

 position: { my: "center", at: "center", of: window },

Также вы можете проверить позиции диалога здесь
Найти позицию

2
Dragon

я столкнулся с этим во время поиска того же вопроса, но у меня уже был мой ответ:

position: ['center', 'top+100']

это будет горизонтально по центру и 100 пикселей сверху

это работает также

position: ['center', 'center+100']

центр по горизонтали и 100 пикселей снизу от центра

1
Exlord

Я поправил ответ Экслорда.

позиция: ['center-7%', 'center-12%']

Это регулирует по горизонтали и вертикали

$(".popup").dialog({    
position: ['center-7%', 'center-12%'],
title: 'Updating',
    width: "auto",
}
});
0
Mikeys4u

Попробуй это:

    position: {
        my: 'top',
        at: 'top',
        of: $('#some-div')
    },
0
Ahmed

Если кто-то создает ссылку, открывающую диалоговое окно jQuery из-за того, что у ссылки class есть обработчик события click, вы можете заметите, что она может перейти на верх страницы, но создать модальное диалоговое окно глубже страница, и вы должны перейти к ней.

Если кто-то просто пытается помешать диалогу jQuery прыгнуть наверх, желая, чтобы он оставался рядом со ссылкой, по которой вы щелкнули, просто удалите href. Почти сошел с ума, пытаясь решить эту проблему. Спецификация HTML5, по-видимому, понимает href="" или href="#" для обозначения перехода наверх.

0
DMadden51
position: { 
   my: 'top', 
   at: 'top+150' 
}

Работал на меня.

0
Santosh Bt