js實現圖片懶加載的方法代碼優化版
首頁頁面最開始要引入jquery.js
圖片懶加載代碼
<script>
// 獲取頁面可視區域的高度
const visibleHeight = window.innerHeight;
// 獲取頁面上所有圖片的元素
const imgs = document.querySelectorAll("img");
// 為每個圖片元素添加 data-src 屬性
for (const img of imgs) {
img.setAttribute("data-src", img.src);
img.src = "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAIBRAA7";
}
// 設置閾值和延遲
const threshold = 100;
// 節流函數
let throttleTimeout;
function throttleScroll() {
if (throttleTimeout) {
return;
}
throttleTimeout = setTimeout(() => {
throttleTimeout = null;
lazyLoad();
}, 200);
}
// 監聽滾動事件
window.addEventListener("scroll", throttleScroll);
// 懶加載函數
function lazyLoad() {
// 遍歷所有圖片元素
for (const img of imgs) {
// 獲取圖片元素的頂部和底部位置
const rect = img.getBoundingClientRect();
const top = rect.top;
const bottom = rect.bottom;
// 如果圖片元素的頂部或底部位置距離可視區域頂部距離小于閾值
if ((top <= visibleHeight && bottom >= 0) || (bottom >= 0 && top <= visibleHeight + threshold)) {
img.src = img.getAttribute("data-src");
}
}
}
// 初始加載一次
lazyLoad();
</script>
聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至201542412@QQ.com舉報,一經查實,本站將立刻刪除。
相關推薦
-
js實現圖片懶加載的方法代碼
簡單的js實現圖片列表懶加載的方法和代碼。必須在懶加載js前面加上jqury才可以。
-
圖片懶加載有哪些方法
圖片懶加載是一種優化網頁性能的技術,它可以延遲加載頁面上的圖片,只有當圖片即將出現在用戶的視口中時才加載它們。這樣可以減少頁面的加載時間,提高用戶體驗和網站的整體性能。,我將介紹幾種常用的圖片
-
圖片懶加載解決了什么
圖片懶加載是一種優化技術,它允許在用戶滾動到圖片位置之前不加載圖片,而是在需要時才加載和呈現圖片。這種優化技術解決了許多與網頁性能和用戶體驗相關的問題。1、減少初始加載時間:在網頁中,圖片通常是較大的













