Андрей
Высший разум
(425151)
4 года назад
Замени модальное окно jQuery UI на, например, arcticModal - оно корректнее центрируется.
Константин ЕфименкоГуру (3721)
4 года назад
2 вещи:
Я бы хотел избежать использования дополнительных и уж тем более малоизвестных плагинов не имеющих достойной документации.
И вторая, не менее важная, дело в том, что у меня при любом раскладе будет использоваться jQuery UI. В связи с этим, я бы предпочёл найти способ решения для него.
Константин ЕфименкоГуру (3721)
4 года назад
Я считаю, что это даже не документация, это ровно нечего. Кажется автор забыл о том, что такое тонкая настройка, её попросту нет.
Ну и зачем мне модуль, который я не смогу использовать и выстраивать по своему усмотрению?
var tbl = $('.tbl');
$(".dlTbl").dialog({
create: function(event, ui)
{
$(event.target).parent().css('position', 'fixed');
},
open: function(event, ui)
{
$(".ui-widget-overlay").on('click', function()
{
$(".ui-dialog-titlebar-close").trigger('click');
});
},
position: {
my: "center bottom",
at: "center top",
of: tbl
},
title:'Выберите из списка',
width:400,
height:210,
autoOpen:false,
resizable:false,
draggable:false,
modal:true
});
$(".dlTbl").dialog("open");
Окно вызывается при клике, по td ячейкам таблицы. Сам диалог прикрепляется к простому div(ву) с классом 'dlTbl'.
Сейчас окно зафиксировано ровно по центру, по диагонали и перемещается вместе со скроллом (бегунком).
Суть проблемы в том, что если скроллить верх или вниз, а затем вызывать модальное окно, то получается небольшое смещение относительно центра.
Вполне возможно, это из-за того, что сейчас положение по вертикали определяется за счёт таблицы, на которую кликаю. Но той же логике, если таблица окажется достаточно большой, то допускаю, что окно вовсе может провалиться под сайт.
Я пробовал задавать относительно окна браузера, но тогда получается неправильно. Модальное окно то всегда сверху, то всегда снизу появляется.
Есть идеи как это правильно сделать?