图片预加载。。。。(2)图片延迟加载
HTML
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>图片预加载</title> </head> <body> <div class="loading" id="js_loading"> <div class="loadingImg"> <img src="images/cake-1.jpg"/> </div> <div class="percent" id="js_speed">0%</div> </div> <div id="container"> <img data-src="images/cake-1.png" height="358" width="444"/> <img data-src="images/cake-2.png" height="358" width="444"/> <img data-src="images/cake-3.png" height="358" width="444"/> <img data-src="images/cake-4.png" height="358" width="444"/> </div> <script src="js/jquery.min.js"></script> <script src="js/loadImg.js"></script> </body> </html>
JS:
var $loading = $('#js_loading'); function execJs() { loadingAll(); //第一部分图片 function loadingImgs(loadCallback){ var $ele = $('#container').find('img'), len = $ele.length; loadImg($ele, 0,function(index){ var $speed = $('#js_speed'); $speed.html(Math.floor(((len - (len - index)) / len) * 100) + '%'); },loadCallback); } //loading开始 function loadingAll(){ loadingImgs(function(){ alert("加载完成!"); $loading.fadeOut(500); // setTimeout(function(){ // $loading.fadeOut(500); // },1000); // $(".home-page .rose").animate({"opacity":'1'},500); }); } } window.onload=function(){ execJs(); }
loadImg.js库
function loadImg(imgObj, index, complete, loadCallback){ var img = new Image(), len = imgObj.length, url = imgObj.eq(index).data('src'); if (index != len) { if(url){ img.src = url; } } else { if(loadCallback) { loadCallback(); } return; } if (img.complete) { imgObj.eq(index).attr('src', url); index ++ if (complete) { complete(index); } loadImg(imgObj, index, complete, loadCallback); } else { img.onload = function () { imgObj.eq(index).attr('src', url); index ++ if (complete) { complete(index); } loadImg(imgObj, index, complete, loadCallback); img.onload = null; }; }; }
给心灵一个纯净空间,让思想,情感,飞扬!