【发布时间】:2017-09-18 20:50:11
【问题描述】:
客户要求图像标题完全覆盖悬停时的缩略图,因此我现在需要能够单击标题以打开 Magnific Popup 而不是 <a>。到目前为止,我已经能够做到:
JS/jQuery:
jQuery(".caption").on("click", function(event) {
var items = [];
jQuery(".item").each(function() {
items.push( {
src: jQuery(this).find("a").first().attr("href")
} );
});
jQuery.magnificPopup.open({
type: 'image',
gallery: {
enabled: true
},
items: items,
image: {
titleSrc: function(item) {
console.log( item.el );
// return item.el.clone();
}
}
});
});
请参阅 fiddle 示例,以及 HTML 和 CSS(以及也不起作用的替代 JS)。
它给了我两个拦截器:
- 总是弹出第一张图片,而不是点击的图片。
- 关于
return item.el.clone();的那部分被注释掉了,因为它会产生“item.el is undefined”错误(当通过jQuery('.caption').magnificPopup()而不是jQuery.magnificPopup.open()实例化magnificPopup 时似乎不会发生这种情况)。但是,我还需要标题 HTML 以显示在弹出窗口中。
任何帮助将不胜感激。谢谢。
【问题讨论】:
标签: javascript jquery magnific-popup