Lazy Load is a jQuery plug-in written in JavaScript. It can delay loading of images in long pages. Images outside the browser's visible area will not be loaded until the user scrolls the page to where they are. This is exactly the opposite of how image preloading is handled.
Lazy loading of images on long pages that contain many large images can speed up page loading. The browser will enter the ready state after loading the visible images. In some cases, it can also help reduce the load on the server.
Demo page:
Basic options
Fade-in effect
For browsers that do not support JavaScript Downgrade processing
Horizontal scrolling
Horizontal scrolling within the container
Vertical scrolling within the container
There are many N pictures in the page
After five years Load images after a delay of seconds
Use AJAX to load images
How to use
Lazy Load relies on jQuery. Please add the following code to the end of the HTML, that is < ;/body>Before:
<script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="jquery.lazyload.js"></script>
You have to change the tag of the image. The address of the image must be placed on the data-original attribute. Give lazy loading images a specific class (for example: lazy). This way you can easily do image plugin bundling. The code is as follows:
<img class="lazy" alt="" width="640" height="480" data-original="img/example.jpg" /> $(function() { $("img.lazy").lazyload(); });
This will cause all images with class lazy to be loaded lazily.
Demo: Basic Options
TIPS: The width and height of the image must be set here, otherwise the plug-in may not work properly.
Set the threshold
By default, the image will be loaded when it appears on the screen. If you want to load the image in advance, you can set the threshold option. Set the threshold to 200 so that the image is 200 pixels away from the screen. Early loading.
$("img.lazy").lazyload({ threshold : 200 });
Set events to trigger loading
You can use jQuery events such as click and mouseover. You can also use custom events, such as sporty and foobar. The default is to wait until the user scrolls down and the image appears in the viewport. Load images only when the user clicks on them:
$("img.lazy").lazyload({ event : "click" });
Demo: Load images after a five-second delay
Use special effects
By default, the plugin waits for the image to fully load and calls show(). You can use any effect you want. The code below uses fadeIn (fade in effect).
Demo: Fade in effect
$("img.lazy").lazyload({ effect : "fadeIn" });
For situations where JavaScript is not enabled
JavaScript for almost all browsers are all enabled. However, you may still want to display real images on clients that do not support JavaScript. To degrade gracefully when the browser does not support JavaScript, you can write the real image fragment in the
<img class="lazy" data-original="img/example.jpg" width="640" heigh="480"> <noscript><img src="img/example.jpg" width="640" heigh="480"></noscript>
.lazy { display: none; }
$("img.lazy").lazyload({ failure_limit : 10 });
$("img.lazy").lazyload({ skip_invisible : false });
Download plugin
Latest version source code and compressed code. The plug-in is already available on OSX’s Safari 5.1, Safari 6, Chrome 20, Firefox 12 browsers, Windows’ Chrome 20, IE 8 and IE 9 browsers, and iOS5 (iPhone and Tested on Safari 5.1 browser of iPad).
For more detailed explanations of jQuery lazyload, please pay attention to the PHP Chinese website for articles related to lazy loading!