摘要:一个简单的图片懒加载所谓懒加载,是为了提高网页的打开的速度,获得更好用户体验的一种手段。本文仅仅简单的举例图片的懒加载,是性能优化的入门的篇章,方法比较简单明了,只要有一点基础就一定能看懂。
一个简单的图片懒加载
所谓懒加载,是为了提高网页的打开的速度,获得更好用户体验的一种手段。其选择的重要的部分先加载,次要的部分需要的时候再加载。比如一个电商网站,首屏通常有很多的数据,清晰度较高的 banner 或轮播。页面非首屏部分会员很多商品夹杂着大量的图片。这是时候选择懒加载以保证首屏的流畅十分重要。
本文仅仅简单的举例图片的懒加载,是性能优化的入门的篇章,方法比较简单明了,只要有一点 js 基础就一定能看懂。
废话不多说
首先,对于非首屏的图片添加了 class="img-delay" 和 data-src属性,后者用来放置图片原始 url 地址的属性,对于图片本身的 src 属性,可以选择空着,或者添加一个”图片无法显示“的提示性图片,像天猫这样:
之后我们需要做的就是,当用户下滑到哪里就显示哪里的图片(提前一点点显示更好,这里不做提前了)
//首先你需要引入一个 jQuery 库 //获取需要延迟加载的图片 var $picDelay = $(".img-delay"); //在 window 上监听滑动事件 $(window).scroll(function(){ var scrollTop = $(window).scrollTop(); //滑块划过的距离 var screenHeight = screen.height; //屏幕浏览器内容部分的高度 //计算每个图片的位置是否符合要求 $picDelay.each(function(idx, ele){ var $ele = $(ele); //当scrollTop + screenHeight === ele.offsetTop时图片刚好出现上边沿 if(scrollTop + screenHeight >= ele.offsetTop){ $ele.attr("src", $ele.attr("data-src")).removeAttr("data-src").removeClass("img-delay"); } }); //当所有图片都加载了以后,移除这个事件 if($(".img-delay").length <= 0){ $(window).unbind("scroll"); } });
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/97613.html
摘要:景科同学的想法很简单,因为本人目前还是一个前端小白,只有通过不断的写,不断的学,在与的相爱相杀中才能更快速的进步。本项目是景科同学自写自测,虽然比较简单,但是不保证没有隐藏的。所以如果看官同学发现还望留言指正,景科同学在此以示感谢。 showImg(https://segmentfault.com/img/remote/1460000014251310?w=841&h=630); 本文...
摘要:一个简单的图片懒加载所谓懒加载,是为了提高网页的打开的速度,获得更好用户体验的一种手段。本文仅仅简单的举例图片的懒加载,是性能优化的入门的篇章,方法比较简单明了,只要有一点基础就一定能看懂。 一个简单的图片懒加载 所谓懒加载,是为了提高网页的打开的速度,获得更好用户体验的一种手段。其选择的重要的部分先加载,次要的部分需要的时候再加载。比如一个电商网站,首屏通常有很多的数据,清晰度较高的...
摘要:原文地址原生实现最简单的图片懒加载欢迎。什么时候用懒加载当页面中需要一次性载入很多图片的时候,往往都是需要用懒加载的。属性是一个必需的属性,它规定在图像无法显示时的替代文本。假设来表示图片到可视区域顶部距离并设来表示可视区域的高度。 原文地址:原生JS实现最简单的图片懒加载 欢迎star。 如果有错误的地方欢迎指正。 Demo地址:http://axuebin.com/lazyloa...
摘要:什么时候用懒加载当页面中需要一次性载入很多图片的时候,往往都是需要用懒加载的。属性是一个必需的属性,它规定在图像无法显示时的替代文本。假设来表示图片到可视区域顶部距离并设来表示可视区域的高度。 懒加载什么是懒加载懒加载其实就是延迟加载,是一种对网页性能优化的方式,比如当访问一个页面的时候,优先显示可视区域的图片而不一次性加载所有图片,当需要显示的时候再发送图片请求,避免打开网页时加载过...
阅读 3562·2021-11-25 09:43
阅读 2568·2021-11-18 13:11
阅读 2140·2019-08-30 15:55
阅读 3253·2019-08-26 11:58
阅读 2801·2019-08-26 10:47
阅读 2165·2019-08-26 10:20
阅读 1246·2019-08-23 17:59
阅读 2958·2019-08-23 15:54