我正在使用Lazy Load加载图像,只有在可见时才能加载图像,并且弹出菜单中首次显示的图像不会加载。所有图像都位于无序列表中的<li>
元素内。当我开始向下滚动列表时,图像开始按原样加载。但是,如何在首次打开菜单时显示少量第一张图像?
我试图触发scroll
事件以及其他事件,但它们似乎都没有效果。 <ul>
位于从&#34; infobar&#34;弹出的菜单中。 (只是页面顶部有链接的栏)。我想也许这与他们(图像)在页面加载时不易看到的事实有关?
这是我的lazyload初始化:
$("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
我还尝试使用mouseenter
和scrollstop
作为event
属性初始化插件,然后触发这些事件,没有运气。
答案 0 :(得分:3)
第二个this.list
是你出错的地方。延迟加载适用于<img>
元素,而不适用于<ul>
$("img.lazy", this.list).trigger("scroll"); // should work