這篇文章主要介紹了javascript順序加載圖片的方法,可實(shí)現(xiàn)javascript針對(duì)圖片的逐次加載,從而減緩服務(wù)器壓力,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
本文實(shí)例講述了javascript順序加載圖片的方法。分享給大家供大家參考。具體如下:
javascript監(jiān)聽一個(gè)圖片是否加載完畢 如果加載完成再加載下一張,不是一次性從服務(wù)器加載 減少服務(wù)器壓力,
可用到的地方:比如制作類似google地圖的應(yīng)用,可以使小圖一張一張的加載
- function Load_pic(arr){
- this.loop_f=function(i,o_file,len,f,obj){
- if(i<len-1){
- i=i+1;
- f(i,o_file,len,obj);
- }
- };
- this.creat_pic=function(i,o_file,len,obj){
- var f=arguments.callee,
- doc=document,
- image = doc.createElement("img");
- image.src =o_file[i];
- i<len?doc.getElementsByTagName("body")[0].appendChild(image):'';
- if(navigator.userAgent.indexOf("MSIE")>0){
- if($.browser.version==6.0 || $.browser.version==9.0){
- //IE9和IE6一樣 微軟真是怪異
- image.onreadystatechange = function () {
- if (image.readyState == "complete"){
- obj.loop_f(i,o_file,len,f,obj);
- }
- };
- }else{
- ie7imagetime = window.setInterval(function(){
- var rs = image.readyState;
- if(rs=="complete"){
- window.clearInterval(ie7imagetime);
- obj.loop_f(i,o_file,len,f,obj);
- }else{
- return;
- }
- },200);
- }
- }else{
- image.onload = function () {
- if (image.complete == true){
- obj.loop_f(i,o_file,len,f,obj);
- }
- };
- }
- };
- if(arr.constructor===Array){
- var len=arr.length,
- i=0;
- i<len?this.creat_pic(i,arr,len,this):'';
- };
- }
- //調(diào)用方法
- new Load_pic([
- 'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/0_0.gif',
- 'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/0_1.gif',
- 'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/0_2.gif',
- 'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/0_3.gif',
- 'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/1_0.gif',
- 'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/1_1.gif',
- 'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/1_2.gif',
- 'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/1_3.gif'
- ]);
- //注意要調(diào)用jquery 用于判斷瀏覽器
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選