2009-10-12 99 views
0

我用javascript代碼 - jquery和PHP。我喜歡有一個文件夾,讓asy 100圖像,掃描它,並讓它與屏幕淡入淡出,並延遲... 大部分可以做到非常esealyGenerale圖像預加載問題

問題:只爲速度爲此,我想了解IMG1,顯示它 預緊IMG2 等待2-3秒 淡出爲IMG2 預緊IMG3 等待 ...等等...

所以只有2在圖像負載同一時間要快得多,並且不需要太多的編碼,只需切換下一個圖像即可......

現在,擁有100張以上的圖片會使其加載速度變慢,而我不會談論250!那只是殺死電腦 任何想法

我想阿賈克斯廣告jquery tu動態地改變img參考和preload ....任何想法的人????

回答

2
在jQuery的

,可以使動畫漸變image.load事件的

像這樣(未經)

 images = [ "one.jpg", "two.jpg" ...]; 
     divs = ["#first", "#second"]; 
     fore = 0; 

     function show() { 
      if(!images.length) return; 
      var back = 1 - fore; 
      $(divs[back]).html("<img>").find("img").attr("src", images.shift()).load(function() { 
       $(divs[fore]).fadeOut(); 
       $(divs[back]).fadeIn(); 
       fore = back; 
       setTimeout(show, 1000); 
      }); 
     } 
+0

我不懷疑,但是它確實工作的回調:HTTP:// jsbin.com/erefe/ – jantimon 2009-10-12 09:41:44

0

在顯示image1時,通過爲其創建圖像標記或使用javascript圖像對象,讓瀏覽器加載並緩存image2。

當您準備切換圖像時,只需將主圖像從image1更新爲image2(它已經存在於瀏覽器緩存中,因此不會延遲)。此時將隱藏圖像更新爲image3並等待其完全加載。