web前端入门到实战:HTML自带懒加载技术
对于目前的图片懒加载,我们一般采用的是通过第三方库或懒加载库来实现,但是该方式的显著问题就是,必须按顺序执行:
1、加载初始的 HTML 响应内容
2、加载懒加载库
3、加载图片
假如浏览器能直接支持懒加载,那是最好的,这一想法也不是不可能哦!从Chrome 75开始,我们可以通过切换两个开关来手动启用懒加载功能,可能最新的Chrome将会默认开启懒加载功能了,就是说不用我们手动去设置了。(注意这里仅说到了是Chrome浏览器哦)
loading特性的原理:
原生懒加载功能使用了一种预检请求来获取图片文件的前2048字节数据。根据预先取得的数据,浏览器会试着确定该图片的大小,在第一个(如果图片大小小于2KB,一个预检请求就够了)或第二次请求完成后,完整图片一加载完毕,其load事件就会解除监听。
我们可以通过一段脚本来判断浏览器是否支持懒加载功能,如果支持,可直接在img标签中写上loading并设置相关的值即可轻松实现懒加载,loading有三个值,分别是auto(默认值,浏览器自行决定是否启用懒加载)、eager(直接加载该图片)、lazy(开启懒加载)。
使用以下脚本可以判断浏览器是否支持原生懒加载功能:
<script> if("loading" in HTMLImageElement.prototype){ alert("支持"); }else{ alert("不支持,你可能需要引入懒加载库来实现懒加载"); } </script>
如果支持,我们可以在img标签中为loading指定值:
<img src="" alt="浏览器自行决定是否启用懒加载" loading="auto"> <img src="" alt="浏览器立即加载该图片" loading="eager"> <img src="" alt="浏览器使用懒加载" loading="lazy"> 专门建立的学习Q-q-u-n ⑦⑧④-⑦⑧③-零①② 分享学习方法和需要注意的小细节,不停更新最新的教程和学习技巧(从零基础开始到前端项目实战教程,学习工具,全栈开发学习路线以及规划)
相关推荐
yanzhelee 2020-10-13
开心就好 2020-06-16
80437700 2020-04-17
wanwanwandj 2020-04-09
iftrueIloveit 2020-03-01
cuterabbitbaby 2020-02-23
sunzhihaofuture 2020-01-09
王军强 2019-11-18
韩学敏 2019-11-09
Johnny0 2019-11-05
84251748 2019-11-04
codebiubiu 2019-11-04
comxpp 2011-12-11
keruis 2011-12-12
hanfox 2019-05-29
GeekGarden 2019-03-19
87133050 2018-11-25
longxx 2016-09-19
bigcactus 2014-10-07