Изменил z-index у календаря и все получилось, но неужели это единственный способ. Если я ничего не напутал, то Dialog свой параметр z-index генерирует автоматически, исходя из расчетов максимального значения. Тогда получается, что для календаря необходимо устанавливать максимально возможное значение. А как же тогда быть, если диалоговые окна накладываются друг на друга? Хорошо, если они модальные с блокированием задней части окна браузера. А если - нет, тогда получится, что календарь будет выводиться поверх всех окон, что не совсем верно с точки зрения правил интерфесов.
Может есть какой-то способ указать, что календарь является дочерним элементом для диалогового окна? |
А если ему вообще не ставить в стилях z-index?
|
Тогда получается, что у Dialog параметр устанавливается, а календарь получает минимальный параметр.
Проверка показала, что не получается, если убрать параметр. Из Dialog параметр убрать без корректировки js убрать нельзя - он рассчитывается там |
У календаря: z-index: 2147483647;
ui.dialog.js: this.activate = function() { var maxZ = 0; $('.ui-dialog:visible').each(function() { maxZ = Math.max(maxZ, parseInt($(this).css("z-index"),10)); }); maxZ-=48; //Чтобы не сильно мнил себя царем горы overlay.$el && overlay.$el.css('z-index', ++maxZ); uiDialog.css("z-index", ++maxZ); }; т.е. на все, что нужно поверх dialog'а останется z-index'ы с 2147483601 до ...47 М.б. накладки с чем еще, но путь ясен. |
Спасибо
|
Часовой пояс GMT +3, время: 08:32. |