Preview:
document.addEventListener("DOMContentLoaded", function() {

  var lazyloadImages;    

​

  if ("IntersectionObserver" in window) {

    lazyloadImages = document.querySelectorAll(".lazy");

    var imageObserver = new IntersectionObserver(function(entries, observer) {

      entries.forEach(function(entry) {

        if (entry.isIntersecting) {

          var image = entry.target;

          image.src = image.dataset.src;

          image.classList.remove("lazy");

          imageObserver.unobserve(image);

        }

      });

    });

​

    lazyloadImages.forEach(function(image) {

      imageObserver.observe(image);

    });

  } else {  

    var lazyloadThrottleTimeout;

    lazyloadImages = document.querySelectorAll(".lazy");

    
downloadDownload PNG downloadDownload JPEG downloadDownload SVG

Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!

Click to optimize width for Twitter