2015-04-06 4 views
1

В моем проекте я использую всплывающее окно. Мне нужно актуализировать 2 всплывающих окна (один внутри другого) с различными вариантами. Сначала только closeOnBgClick и второй с обоими: closeOnBgClick и closeOnContentClick.Великолепное всплывающее окно всплывающего окна

$('.popup-with-form').magnificPopup({ 
    type: 'inline', 
    preloader: false, 
    closeOnBgClick: true 
}); 
$('.popup-content-click').magnificPopup({ 
    alignTop: true,  
    type: 'inline', 
    preloader: false, 
    modal: true, 
    closeOnBgClick: true, 
    closeOnContentClick:true 
}); 

Здесь вы можете увидеть, что я имею в виду: http://jsfiddle.net/pamjaranka/p1u2xdun/3/ Проблемы есть, вторая всплывал игнорируется это варианты и использовать те же параметры, что и первые всплывал. Для ясности я добавил 'alignTop: true', который также не работает. Есть ли возможность исправить это? Спасибо за помощь.

ответ

1

Появляется сообщение о том, что после всплывающего всплывающего окна вам необходимо закрыть его, а затем вызвать второй всплывающий метод open, в противном случае параметры из первого предшествуют, таким образом, наложение всегда закрывает всплывающее окно. Вот краткое изменение, которое я сделал в коде JS:

// Assign on click behaviour to the button in the first pop-up 
$('.popup-content-click').on('click', openPopup); 

// on click handler 
function openPopup(){ 
    //Closing the already opened pop-up  
    $.magnificPopup.close(); 
    //wait a bit then open the new pop-up 
    setTimeout(function(){ 
    $.magnificPopup.open({ 
     items:{src: '#result-again'}, 
     type: 'inline', 
     closeOnBgClick: false, 
     closeOnContentClick:true 
     }); 
    }, 100); 
} 

Here is the jsfiddle for that

+0

Это работает! Большое спасибо. Извините, но я не могу отметить ваш ответ как полезный, пока у меня не будет достаточно репутации. –

+0

Добро пожаловать. – mzografski

Смежные вопросы