原生loading="lazy"属性可提升含大量图片页面的加载速度和用户体验,现代浏览器通过该属性实现懒加载,图片接近视口时自动加载;对于需兼容旧浏览器或更精细控制的场景,可用Intersection Observer配合data-src实现自定义懒加载函数;建议优先对非首屏图片启用懒加载,结合srcset和sizes优化响应式图片,并预留占位尺寸以避免布局偏移。

图片懒加载能显著提升网页加载速度和用户体验,尤其在包含大量图像的页面中。现代 HTML 提供了原生支持,结合简单函数可高效实现。
现代浏览器支持 loading="lazy" 属性,无需 JavaScript 即可实现懒加载。
只需为 img 标签添加该属性:<img src="image.jpg" alt="描述" loading="lazy">
对于需要兼容旧浏览器或更精细控制的场景,可用 JavaScript 实现。
立即学习“前端免费学习笔记(深入)”;
基本思路是将真实图片地址存于 data-src,用 JS 检测元素是否进入视口:
function initLazyLoad() {
const images = document.querySelectorAll('img[data-src]');
const imageObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const img = entry.target;
img.src = img.dataset.src;
img.removeAttribute('data-src');
imageObserver.unobserve(img);
}
});
});
images.forEach(img => imageObserver.observe(img));
}
<img alt="描述" />
以上就是html函数如何实现图片懒加载 html函数loading属性的性能优化的详细内容,更多请关注php中文网其它相关文章!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号