Skip to content

Instantly share code, notes, and snippets.

@Verfranc
Created January 29, 2024 03:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Verfranc/da85b73e30d50372f45a2c65effab7e8 to your computer and use it in GitHub Desktop.
Save Verfranc/da85b73e30d50372f45a2c65effab7e8 to your computer and use it in GitHub Desktop.
Web API Snippets
===================================
IntersectionObserver
--------------------
function createImageObserver() {
lazyImages.length = 0;
lazyImages = [].slice.call(document.querySelectorAll('img[data-src]'));
if ('IntersectionObserver' in window) {
var lazyImageObserver = new IntersectionObserver(function(entries, observer) {
entries.forEach(function(entry) {
if (entry.isIntersecting) {
var lazyImage = entry.target;
lazyImage.src = lazyImage.dataset.src;
lazyImageObserver.unobserve(lazyImage);
}
});
});
lazyImages.forEach(function(lazyImage) {
lazyImageObserver.observe(lazyImage);
});
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment