lazyload.js IntersectionObserver图片懒加载工具
浏览器自带的 IntersectionObserver 做懒加载,响应快,性能也稳定,不用额外引入库,写起来还挺舒服的。lazyload.js
就是我自己封装的一个小工具,比较适合纯前端项目,也挺适合 Vue 这类框架配合用。
以前做图片懒加载,动不动就 jQuery 插件一大堆,加载快慢也不好控制。现在直接靠浏览器原生 API,观察元素是否进入视口,触发加载逻辑,逻辑清晰,性能也靠谱。
像那种产品图多、页面长的电商项目,或者内容图片一大堆的博客页面,用这个真的挺省事。你只需要加个data-src
属性,配合一点 CSS 占位,基本就搞定。
需要注意的是,IE 不支持这个 API,老项目就别勉强了。但现代浏览器都挺稳的,你放心用。
如果你还不太了解 IntersectionObserver,可以看看这篇《JavaScript-lazyload 图片懒加载》,讲得比较清楚,还有 demo 演示。
另外,如果你对懒加载的各种方案感兴趣,这篇《图片懒加载方案》也挺值得一读,涵盖了从原生到框架的几种方式。
,lazyload.js
适合喜欢轻量工具的你,代码不多,逻辑简单,用着舒服。
如果你在用 React 的话,也可以参考下这篇《React 应用懒加载演示》,思路类似,配合组件拆分更灵活。
嗯,有问题欢迎留言,或者直接去改源码也行,代码干净,改起来不费劲。
775B
文件大小:
评论区