概述IntersectionObserver 提供高性能的可见性监测,适合实现图片与模块的懒加载与按需渲染,避免滚动事件轮询与主线程压力。用法与参数`new IntersectionObserver((entries, observer) => { ... }, { root, rootMargin, threshold })`:`root`:可观测容器,默认视口。`rootMargin`:扩展/收缩根边界以提前或推迟触发(如 `100px` 预取)。`threshold`:触发可见比例(如 `0`, `0.5`)。在回调中为图片设置真实 `src`/`srcset` 或加载模块,并 `unobserve` 已处理的元素[参考1]。实践建议图片懒加载:与现代格式/响应式图片结合;首屏/LCP 图片不要懒加载。模块懒加载:按路由或组件边界拆分,进入视窗再加载;与 `content-visibility` 协同。回退:旧浏览器使用滚动/节流回退,或 polyfill。参考与验证[参考1]MDN 中文:Intersection Observer API 概览与示例:https://developer.mozilla.org/zh-CN/docs/Web/API/Intersection_Observer_API[参考2]CSDN/实践:IntersectionObserver 懒加载方案与兼容注意:https://blog.csdn.net/wzy_PROTEIN/article/details/136534207关键词校验关键词与 IntersectionObserver 懒加载一致。

发表评论 取消回复