Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.03.2014, 21:29
Аспирант
Отправить личное сообщение для katamason Посмотреть профиль Найти все сообщения от katamason
 
Регистрация: 18.06.2011
Сообщений: 75

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, 18.03.2014 в 21:40.
Ответить с цитированием
  #2 (permalink)  
Старый 18.03.2014, 22:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

katamason,
почему вы решили что несрабатывает? и зачем бессмысленно вычислять то что вам известно заранее
Сообщение от katamason
var marl = w / 2;
Ответить с цитированием
  #3 (permalink)  
Старый 18.03.2014, 22:53
Аспирант
Отправить личное сообщение для katamason Посмотреть профиль Найти все сообщения от katamason
 
Регистрация: 18.06.2011
Сообщений: 75

Просто окно не меняет положение при открытии. Стоит только на милиметр подвинуть окно при <600 окна, тогда только ресайз ресайз и работает. Вот и вынужден это расценить, что не срабатывает

Последний раз редактировалось katamason, 18.03.2014 в 23:03.
Ответить с цитированием
  #4 (permalink)  
Старый 18.03.2014, 22:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

katamason,
'margin-left': '-285px' думаю и сами сосчитали
Ответить с цитированием
  #5 (permalink)  
Старый 18.03.2014, 23:12
Аспирант
Отправить личное сообщение для katamason Посмотреть профиль Найти все сообщения от katamason
 
Регистрация: 18.06.2011
Сообщений: 75

Сообщение от рони Посмотреть сообщение
katamason,
'margin-left': '-285px' думаю и сами сосчитали
Ведь это не суть.. Подскажите, есть ещё способы хоть как то отследить открытие диалога ?

Последний раз редактировалось katamason, 18.03.2014 в 23:19.
Ответить с цитированием
  #6 (permalink)  
Старый 18.03.2014, 23:33
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

katamason,
перед открытием можно присваивать необходимый класс а отследить вы веть чемто его открываите ставьте перед открытием что вам необходимо
вариант
$( "#opener" ).click(function(){
  var wiw =  $( window ).innerWidth();
  if ( wiw  >= 600) $("#dialog").dialog( "option", "dialogClass", "new_class" );
  $( "#dialog" ).dialog( "open" );
  return false;
});
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jquery dialog запускается только при втором обращении Фоныч jQuery 6 19.02.2014 16:04
jquery resize для div (а не только для window) Vitaliy88 Events/DOM/Window 102 12.08.2013 22:33
jQuery UI Dialog, modal:true и белая полоса frutality jQuery 10 19.06.2013 15:52
on вместо bind для ловли resize jquery? rockerror Библиотеки/Тулкиты/Фреймворки 2 05.11.2012 13:55
Jquery dialog HardRock jQuery 11 14.08.2009 09:35