Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   вызов модального окна из другого модального окна (https://javascript.ru/forum/jquery/49969-vyzov-modalnogo-okna-iz-drugogo-modalnogo-okna.html)

ask67 05.09.2014 14:05

вызов модального окна из другого модального окна
 
В модальное окно загружаю внешний php-файл, в котором предусмотрен вызов другого модального окна. В обоих случаях вызов окна осуществляется через .css('display2', 'block') плюс появляется полупрозрачная подложка. Все работает. Но возникает неудобство - при загрузке нового окна старое не пропадает и одна подложка закрывает другую. А в случае, когда я хочу во время открытия нового окна закрыть старое и убрать подложку, новое окно не открывается.

Часть кода: вот так работает

$('a#goe').click( function(event){ // ловим клик по ссылки с id="goe"
         event.preventDefault(); // выключаем стандартную роль элемента
         $('#overlay2').fadeIn(400, // сначала плавно показываем новую темную подложку
             function(){ // после выполнения предъидущей анимации
                 $('#uploads') 
                     .css('display', 'block') // убираем у модального окна display: none;
                     .animate({opacity: 1, top: '50%'}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз
         });
 	  $('.wrap1').load($('a#goe').attr("modal"));	 // в блок warp загружается содержимое аттрибута modal
    });


А вот так не работает (добавлены две команды - убираем подложку '#overlay' и скрываем блок '#modal_form'). Эти две команды исполняются, а дальше - нет. Почему не открывается окно?

$('a#goe').click( function(event){ // ловим клик по ссылки с id="goe"
         event.preventDefault(); // выключаем стандартную роль элемента
		 // надо закрыть окно с инструментами
 		 $('#modal_form').css('display', 'none'); // делаем ему display: none;
   		 $('#overlay').fadeOut(400); // скрываем подложку
         $('#overlay2').fadeIn(400, // сначала плавно показываем новую темную подложку
             function(){ // после выполнения предъидущей анимации
                 $('#uploads') 
                     .css('display', 'block') // убираем у модального окна display: none;
                     .animate({opacity: 1, top: '50%'}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз
         });
 	  $('.wrap1').load($('a#goe').attr("modal"));	 // в блок warp загружается содержимое аттрибута modal

ask67 07.09.2014 20:48

Спасибо! Я понял как надо делать - надо грузить в то же окно, только менять его размеры.


Часовой пояс GMT +3, время: 22:59.