我在每个页面上都有一个幻灯片,其中包含页面所述对象的图像。 每个幻灯片通常包含5-6个图像幻灯片。
我的想法是仅在前2张图像上设置src
属性,在其余的图像上只设置data-src
属性到图像文件中,然后在整个页面加载完成后,借助以下JavaScript加载其余图片:
function loadImages() {
$('#house-carousel .item img').each(function(){
if($(this).attr('data-src')){
$(this).attr('src', $(this).attr('data-src'));
}
});
}
$(document).ready(loadImages);
这种思路是因为在用户查看页面的前几秒钟,图像并不会显示出来,所以我可以延迟加载它们,让客户端先下载页面上其他内容。
但是现在我再次思考...这样真的有帮助吗?我的意思是,图像不会阻塞渲染,对吧?那么无论是在页面加载时加载它们还是在页面加载后加载它们是否真的有所区别呢?
请注意,这不是一个“延迟到用户查看图像”的脚本,它只是将其延迟到其他资源加载完毕之后。
那么你认为这样做真的有用吗?像http://tools.pingdom.com这样的速度测试工具并没有显示任何差异。
必须
比加载更多图片要快。所以一切都取决于您的懒加载方法。 - Petroff