Jquery lightGallery()可以用作回调吗?它只能在页面加载后初始化一次吗?
我在使用lightGallery作为回调时遇到问题;当客户选择产品选项时,我尝试在Shopify中使用此选项 例如,我有一个有5个图像的div lightgallery,页面加载后,$lightgallery.lightgallery;被称为Jquery lightGallery()可以用作回调吗?它只能在页面加载后初始化一次吗?,jquery,callback,shopify,image-gallery,lightgallery,Jquery,Callback,Shopify,Image Gallery,Lightgallery,我在使用lightGallery作为回调时遇到问题;当客户选择产品选项时,我尝试在Shopify中使用此选项 例如,我有一个有5个图像的div lightgallery,页面加载后,$lightgallery.lightgallery;被称为 当客户选择产品变型时,lightgallery中的前5个图像将被删除,并创建变型的新4个图像,但$lightgallery.lightgallery;不初始化变体的新库。在实例化新库之前,需要销毁lightGallery。因此,我在onCloseAfter
当客户选择产品变型时,lightgallery中的前5个图像将被删除,并创建变型的新4个图像,但$lightgallery.lightgallery;不初始化变体的新库。在实例化新库之前,需要销毁lightGallery。因此,我在onCloseAfter事件上调用destroy方法:
const $lg = $("#lightgallery");
$lg.lightGallery();
$lg.one('onCloseAfter.lg',function(event){
$lg.data('lightGallery').destroy('true');
});
请注意$lg.one而不是$lg.on,请查看mervick最后的评论:
我发现可以一次实例化多个灯光库,而不是创建和销毁多个灯光库,如下所示:
$('.gallery').lightGallery();
写下下面提到的关于ajax成功的脚本 注意:UnitPlansGallery是我们应用灯光库的类或id
var lg = jQuery('.unitPlanslightGallery');
// destroy
lg.data('lightGallery').destroy(true);