我正在尝试实施以下内容:
我将登录表单显示为模式弹出窗口(带有Magnific Popup插件)。在这个窗口里面,我打开了一个链接,打开一个新的弹出窗口(注册表单)。问题是,只要用户点击该链接 - 现有的弹出窗口就会关闭但新的弹出窗口不会出现。
开启弹出窗口的代码:
$.magnificPopup.open({
items: {
src: name
},
type: 'inline',
closeMarkup: '<button title="%title%" class="mfp-close">×</button>',
preloader: false,
fixedContentPos: true,
fixedBgPos: true,
overflowY: 'auto'
});
有什么建议吗?
提前谢谢
答案 0 :(得分:2)
callbacks: {
open: function() {
$('.new-ajax-popup-link').on('click', function(e) {
e.preventDefault();
// close current popup
$.magnificPopup.close();
return false;
});
},
afterClose: function() {
// new popup instance
var newAjaxPopupLink = $('.new-ajax-popup-link').magnificPopup({
type: 'ajax'
});
// open it
$('.new-ajax-popup-link').magnificPopup('open');
}
}
答案 1 :(得分:1)
在点击事件处理程序中添加event.stopPropagation()
。 Popup认为点击的元素超出了界限,因为在点击后通过打开新的弹出窗口将其删除。