我正在尝试实现与上图类似的结果:
使用fancybox-3插件,我创建了自定义模板:$('[data-fancybox="gallery"]').fancybox({
fullScreen : false,
slideShow : false,
autoSize : false,
loop:true,
touch : {
vertical : false,
horizontal : false
},
thumbs : {
autoStart : true
},
onThumbsShow : function(instance, current) {
instance.Thumbs.$grid.appendTo( instance.$refs.inner );
},
clickOutside : 'close',
baseTpl :
'<div class="fancybox-container qv-container" role="dialog" tabindex="-1">' +
'<div class="fancybox-bg"></div>' +
'<div class="fancybox-inner">' +
'<button data-fancybox-prev title="{{PREV}}" class="fancybox-arrow fancybox-arrow--left" />' +
'<button data-fancybox-next title="{{NEXT}}" class="fancybox-arrow fancybox-arrow--right" />' +
'<button data-fancybox-close class="qv-close"></button>' +
'<div data-fancybox-close class="qv-close"></div>' +
'<div></div>' +
'</div>' +
'</div>',
});
部分地,我已经成功地实现了类似下图所示的结果:
毕竟,我缺少带有图像下方文本的 div。我已经尝试使用 codepen example 作为参考,但没有得到令人满意的结果 :/
有人知道我哪里错了吗?非常感谢所有可能的帮助。
期待您的回复,
data-caption="text"
是添加文本到灯箱的唯一方法吗?图像下方的文本应该像画廊描述一样,并且不会根据当前图像而改变。 - o.ObaseTpl :
禁止对caption
进行操作。您知道是否可以在 HTML 中查找并附加 div 到baseTpl :
中吗?类似于+'<div id="' + someID + '" class="class-name">' + content + '</div>'+
的方式。 - o.O