缓存图片
缓存图片
为了提高具有大量图片的页面的加载速度,提升用户体验,最好先将图片下载到本地,让浏览器缓存起来。常用的方法是JS的Image对象:
1 <script> 2 function loadImage(url,callback) { 3 var img=new Image();//创建一个Image对象,实现图片预下载 4 img.src=url; 5 if (img.complete) {//如果图片已经存在于浏览器缓存,直接调用回调函数 6 callback.call(img); 7 return;//直接返回,不用再处理onload事件 8 } 9 img.onload=function() {//图片下载完成时异步调用callback函数 10 callback.call(img);//将回调函数的this对象替换为Image对象 11 } 12 } 13 </script>
当图片加载过一次后如果再有对该图片的请求时,浏览器已经缓存过这张照片了,不会再发起一次请求,直接从缓存中载入图片。
机会来临时无能为力才是最可悲的