Native JavaScript Image Lazy Loading Plugin

Add-ons
2026-07-26 00:59 4 次浏览 • 0 次下载 2.7KB
Native JavaScript Image Lazy Loading Plugin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Get all img elements with data-src attributes
var limg = document.querySelectorAll("img[data-src]")
// Array.prototype.forEach.call() is a quick way to access forEach and replace the empty array as this with the list you want to iterate over.
Array.prototype.forEach.call(limg, function(item, index) {
var rect
// Skip if data-src is empty
if (item.getAttribute("data-src") === "")
return
// getBoundingClientRect is used to obtain an element's position relative to the viewport. The returned object contains properties such as top, right, bottom, and left.
rect = item.getBoundingClientRect()
// Dynamically load images when they enter the visible area
if (rect.bottom >= 0 && rect.top < viewHeight) {
(function() {
var img = new Image()
img.src = item.getAttribute("data-src")
item.src = img.src
// Add a transition effect to the image to make it appear smoothly
var j = 0
setInterval(function() {
j += 0.2
if (j <= 1) {
item.style.opacity = j
return
}
}, 100)
// Remove data-src
item.removeAttribute('data-src')
})()
}
})
星河码客

发现和分享优质开源项目,传承互联网精神,为开发者服务。

关于本站

联系我们

微信/广告合作:ITcloub (备注星河码客)

免责声明:本站资源版权归原作者所有,仅供学习与交流。如有侵权,请通过「关于我们 - 侵权投诉」联系删除。

Powered by Nuxt · Deployed on Cloudflare