LazyLoad图像直到滚动后才出现

use*_*540 8 jquery webkit lazy-loading

我正在为jQuery 使用lazyload插件.

它工作正常,除了一个问题:在滚动之前,图像src没有被换出数据原始版本.一旦你滚动,甚至一点点,图像加载 - 但我需要它们在页面准备好时加载.

注意:这纯粹是Chrome/Safari问题.我在Firefox或Opera,甚至IE9中都没有这个问题.

我试过按照这篇文章的建议:http: //sumanrs.wordpress.com/2011/02/08/jquery-lazy-loading-images-no-scrolling/ 其中说明基本的jQuery库具有以下功能:没有插件需要延迟加载.这似乎并非如此,因为图像只是在初始页面加载时加载.

任何见解都非常感谢!

Mik*_*ola 16

您的图像很可能没有设置宽度和高度.Webkit浏览器将在document.ready上看到零宽度和高度的图像.这意味着jQuery会认为图像不可见.Lazy Load默认忽略不可见的图像.你有三个选择.

  1. 修复HTML以在图像上具有宽度和高度属性.
  2. 设置skip_invisiblefalse.
  3. 使用插件的至少1.8.3版本.

  • 我已经在下面的答案中指出了这一点 (2认同)

Cul*_*SUN 6

 $(window).resize();
Run Code Online (Sandbox Code Playgroud)

在我的情况下帮助了我.


use*_*540 4

解决了我自己的问题:您必须设置图像的高度和宽度!