我正在整理一个画廊,其中包括一些相当大的GIF。我认为最好尝试显示预加载器,因为它们加载并仅加载可见图像。为此,我发现了jQuery Lazy:http://jquery.eisbehr.de/lazy/
我遇到的问题是所有图像似乎都立即加载,为什么呢!您可以看到我在这里得到的:http://psychro.me/work/
任何帮助,我们将不胜感激。非常感谢。
答案 0 :(得分:0)
如文档中所述:(根据http://jquery.eisbehr.de/lazy/example_delayed-loading)
......懒惰使用延迟时间来在页面加载后立即加载所有图像, 而不是只在视图中加载元素...
因此,我认为,如果删除网站上使用的“延迟”属性(已评论进行测试),则不会一次加载所有图像。
您网站上的代码:
$(function() {
$('.lazy').lazy({
beforeLoad: function(element) {
var imageSrc = element.data('src');
console.log('image "' + imageSrc + '" is about to be loaded');
},
scrollDirection: 'vertical',
delay: 1000, // For testing
effect: "fadeIn",
effectTime: 1000,
threshold: 0
});
});
正确的形式:
$(function() {
$('.lazy').lazy({
beforeLoad: function(element) {
var imageSrc = element.data('src');
console.log('image "' + imageSrc + '" is about to be loaded');
},
scrollDirection: 'vertical',
effect: "fadeIn",
effectTime: 1000,
threshold: 0
});
});