Resize jquery dialog
Добрый день. Пытался вызвать функцию в момент открытия окна . Получилось прицепить на resize, но в open не отрабатывает. Подскажите почему ?
var changeDialog = function() {
var w = $('.ui-dialog').outerWidth();
var marl = w / 2;
var wiw = $( window ).innerWidth();
if ( wiw >= 600) {
$('.ui-dialog').css({'left':'50%', 'width': '570px', 'margin-left':-marl+ 'px'});
} else {
$('.ui-dialog').css({'margin-left':'0px', 'left':'0px', 'width':'auto', 'min-width':'0'});
}
}
$(window).on('resize',function() {
changeDialog();
});
$( "#dialog-load" ).dialog({
autoOpen: false,
draggable: false,
width:'auto',
open:function(event, ui) {
changeDialog();
},
});
|
katamason,
почему вы решили что несрабатывает? и зачем бессмысленно вычислять то что вам известно заранее Цитата:
|
Просто окно не меняет положение при открытии. Стоит только на милиметр подвинуть окно при <600 окна, тогда только ресайз ресайз и работает. Вот и вынужден это расценить, что не срабатывает
|
katamason,
:) 'margin-left': '-285px' думаю и сами сосчитали |
Цитата:
|
katamason,
перед открытием можно присваивать необходимый класс а отследить вы веть чемто его открываите ставьте перед открытием что вам необходимо вариант
$( "#opener" ).click(function(){
var wiw = $( window ).innerWidth();
if ( wiw >= 600) $("#dialog").dialog( "option", "dialogClass", "new_class" );
$( "#dialog" ).dialog( "open" );
return false;
});
|
| Часовой пояс GMT +3, время: 14:44. |