我有一个带有图片的cms收藏列表。我用mixitup库过滤它们,它只设置display:none
为过滤掉的图片。点击收藏列表中的任何一个缩略图都会触发fancybox 4,里面有相应的全分辨率图片。在里面你可以点击所有的收藏列表图片。过滤列表工作正常。
我想做的是当一些过滤器被应用时,在点击缩略图img时更新fancybox,并且只显示过滤后的图像。现在Fancybox总是显示一个完整的未过滤的图像集。
它会像这样分配给内容
Fancybox.bind('[data-fancybox="gallery"]')
我试图更新Fancybox,寻找没有display:none
的元素,点击过滤器按钮
let visibleLinks = $('.lightbox-link:not(:hidden)');
$('.lightbox-link').on('click', function() {
Fancybox.unbind('[data-fancybox="gallery"]');
Fancybox.bind(visibleLinks);
});
但是,这一点,以及许多其他的变化,已经失败了。希望得到一些输入从你-我如何可以更新fancybox的内容?
1条答案
按热度按时间enyaitl31#
您是否尝试过直接使用选择器?如下所示:
因为你可以这样读代码片段:
when user clicks any element matching '.lightbox-link:not(.hidden)' selector, start Fancybox and create gallery using elements that match that selector
我想这就是你要找的。