1

我正在使用延迟加载来加载图像,仅当它们可见并且从弹出菜单中首次可见的图像未加载时。所有图像都位于<li>无序列表上的元素内。当我开始向下滚动列表时,图像开始按应有的方式加载。但是,如何在第一次打开菜单时显示几张第一张图片?

我试图触发该scroll事件以及其他事件,但它们似乎都不起作用。它<ul>位于从“信息栏”(只是页面顶部带有链接的栏)弹出的菜单中。我在想这可能与它们(图像)在页面加载时不容易看到的事实有关?

这是我的延迟加载初始化:

$("img.lazy", this.list).show().lazyload({
  effect: "fadeIn",
  container: this.list,
  threshold: 50
});

$(this.list).trigger("scroll"); // tried this
$(document).trigger("scroll"); // and that

// this.list is the unordered list

我还尝试使用mouseenterscrollstop作为event属性初始化插件,然后触发这些事件,没有运气。

4

1 回答 1

3

第二个this.list是你哪里出错了。延迟加载适用于<img>元素而不是<ul>

$("img.lazy", this.list).trigger("scroll"); // should work
于 2014-07-30T14:37:55.110 回答