{ "name": "XGate Store", "short_name": "XGate", "icons": [ { "src": "/icons/icon-192x192.png", "sizes": "192x192", "type": "image/png" }, { "src": "/icons/icon-512x512.png", "sizes": "512x512", "type": "image/png" } ], "start_url": "/", "display": "standalone", "theme_color": "#007BFF", "background_color": "#ffffff" } document.addEventListener("DOMContentLoaded", function () { const images = document.querySelectorAll('img[data-src]'); const observer = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { const img = entry.target; img.src = img.getAttribute('data-src'); img.onload = () => img.removeAttribute('data-src'); observer.unobserve(img); } }); }); images.forEach(image => observer.observe(image)); });