This page demonstrates lazy loading of images, iframes, and other media. Scroll down to see content load as it comes into view.
This image is visible on page load, so it should start loading immediately:
Scroll down to trigger lazy loading...
These images use data-src attribute and will load when scrolled into view:
Image #1 - Loads when visible
Image #2 - Loads when visible
These images use data-srcset for responsive loading:
Picture element with different sources for different screen sizes:
These divs use data-lazy-bg for background images:
These elements get classes added when they come into view:
This box will fade in from the left when visible
This box will fade in from below when visible
This box will fade in from the right when visible
This box will get Bootstrap primary background and white text when visible
YouTube videos and other iframes that load on scroll:
A grid of many images to test performance with multiple lazy-loaded elements:
HTML5 video that loads when scrolled into view:
These images from picsum.photos load slowly, so you can see the loading animation:
Watch the shimmer loading animation
This should show loading state longer
This container will load HTML content when scrolled into view:
These images have invalid URLs to test error handling:
This image should fail to load
This image should load successfully
This image is at the very bottom of the page:
All lazy-loaded content should now be visible.
Click the button below to dynamically add new lazy-loaded images to test MutationObserver: