将通过ajax加载的新图片添加到打开的灯箱弹窗中

问题描述 投票:0回答:1

我面临一个问题,我创建了一个图片库,其中默认显示18张图片,如果用户向下滚动到页面末尾,那么更多的图片将通过ajax添加到图片库中。

现在假设当用户有18张图片并打开一个灯箱,那么在灯箱的最后有18张图片,他可以来回浏览。

现在如果用户滚动页面到最后,新的图片就会被添加到页面上,而我想把这些图片添加到打开的灯箱中。

Please suggest a way to acheal this.

先谢谢你了。

lightbox2
1个回答
0
投票

背景图片

当用户点击图片时,Lightbox脚本的 start() 方法被调用。这将编译要显示的图像列表,可以是单个图像,也可以是一组图像,如果 data-lightbox 是指定的,通过浏览页面。这些信息存储在一个名为 album 在Lightbox对象上。

如果您动态加载图片,然后用户点击图片打开Lightbox,那么事情应该会像预期的那样工作,因为图片的编译发生在 .

解决办法

在你的方案中,Lightbox已经打开,我假设你有一组图片正在浏览。你想让用户在Lightbox打开的同时继续滚动,而这种滚动将动态地加载更多属于这组图片的图片到页面上。

目前还没有记录下来的方法可以做到这一点。但是,你可以通过深入了解内部结构来解决你的问题,非常容易。通常不建议这样做,但预计Lightbox2 API不会有大的变化,所以这应该是安全的(虽然不能保证)。

在滚动时,一旦加载了新的图片,将它们添加到Lightbox对象的 album 属性。然后调用 updateDetails() 来刷新用户界面。

lightbox.album.push({
  link: 'fruit-roll-ups.jpg'
});
lightbox.updateDetails();
© www.soinside.com 2019 - 2024. All rights reserved.