1

我有不同的专辑,我想在 Lightgallery 中展示其中的内容。

我最初的电话是这样的:

$('.dlCms_c_Carousel').lightGallery({
                                    dynamic   : true ,
                                    dynamicEl : dlThis.LGDynEl ,
                                    thumbnail : true ,
                                    mode      : 'lg-fade' ,
                                    });

这很完美,但是当打开另一张专辑时,我希望以一种或另一种方式刷新,以便显示 dynamicEl 的新内容。

有没有办法做到这一点?

我正在尝试一个

$('.dlCms_c_Carousel').data("lightGallery").destroy(true) 

以前,但那搞砸了。即,似乎有一些功能,但看起来灯箱失去了一些样式并且不再不透明。

有什么提示吗?

4

1 回答 1

0

我正在使用Waypoint.js通过 lightgallery 进行无限滚动。

我找到的动态刷新解决方案是:

var gallery = $(".infinite-container").lightGallery({
  selector: '.item'
});

var infinite = new Waypoint.Infinite({
  element: document.querySelector('.infinite-container'),
  onAfterPageLoad: () => {
    gallery.data('lightGallery').destroy(true);
    gallery = $(".infinite-container").lightGallery({
      selector: '.item'
    });
  }
});

根据我的经验,从 lightgallery 初始化返回的对象必须用于销毁。

希望能帮助到你。

于 2016-02-08T11:44:09.587 回答