我对Magnific-popup及其AJAX有困难。如果链接也是弹出窗口,我想简单地切换弹出窗口的内容。这应该默认工作,但不知何故它不会。
的JavaScript :
$('.magnific').magnificPopup({
type: 'ajax',
ajax: {
settings: null,
cursor: 'mfp-ajax-cur',
tError: '<a href="%url%">The content</a> could not be loaded.'
},
closeOnContentClick: false,
closeOnBgClick: true,
showCloseBtn: false,
mainClass: 'mfp-fade',
callbacks: {
parseAjax: function(mfpResponse) {
mfpResponse.data = $(mfpResponse.data).find('.overlay');
console.log('Ajax content loaded:', mfpResponse);
},
ajaxContentAdded: function() {
console.log(this.content);
}
}
});
这适用于标准网站上的链接。但是如果弹出窗口中有链接,它只会执行该链接,忽略Magnific Popup。
我最好的猜测是,它无法启动,因为它无法找到选择器(就像你使用.click
而不是.on('click'...))
,但我似乎无法弄明白我自己的。
任何帮助都非常好! apprechiated!
编辑:好的,我已经确定了问题。似乎函数.js中的代码在弹出窗口的限制内根本不可用。有没有办法让弹出窗口中的.js文件可用?我使其工作的唯一方法是将.js文件包含在每个具有大量链接的文件中......但这看起来很脏。我应该使用ajax回调加载它还是有另一种方式?
祝你好运, ģ