document.addEventListener("DOMContentLoaded", function() { const lazyImages = document.querySelectorAll("img.lazy"); // Проверка поддержки IntersectionObserver if ("IntersectionObserver" in window) { const observer = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { const img = entry.target; img.src = img.getAttribute("data-src"); img.classList.add("loaded"); // делает изображение видимым img.removeAttribute("data-src"); // очищает data-src после загрузки observer.unobserve(img); // перестает наблюдать за загруженным изображением } }); }); lazyImages.forEach(img => observer.observe(img)); } else { // Поддержка для старых браузеров (загружаем все изображения сразу) lazyImages.forEach(img => { img.src = img.getAttribute("data-src"); img.classList.add("loaded"); }); } });