2011-05-17 216 views
1

我有一個jQuery的問題...使用大量圖片的網站(按照畫廊組織) - http://www.cool-breeze.com - 我開發了一個只加載當前可見庫的預加載器。jQuery預加載不顯示圖像

它的工作原理+/-這樣:

jQuery('<img />') 
      .attr('src',src) 
      .load(function(){ 
       jQuery("div.cb_div:eq("+item+")").append(jQuery(this)); 
       ... 
      }); 

遺憾的是,似乎有些圖片不顯示。

請參閱圖片http://www.cool-breeze.com/dev/cb-load.png。圖片上的加載器是應該加載(和附加)圖片的div的背景。

我不明白爲什麼我的照片沒有顯示。如果我再次點擊「泰國高爾夫球」(例如,這是一個JavaScript鏈接,使畫廊可見或不可見),則會出現缺失的圖片!

任何想法如何使圖片顯示從加載?

預先感謝您的任何建議和問候, mhammout

+1

@ user365351 - 您是否嘗試過使用Firebug(Firefox的插件)查看頁面加載時是否顯示任何錯誤 – Rob 2011-05-17 14:17:35

+0

不幸的是,我使用的惡作劇腳本不喜歡螢火蟲,並且無法在該頁面上使用它... – user365351 2011-05-17 16:30:14

回答

1

你應該爲了在設置「ATTR」屬性,以避免在對圖像進行活動前滿載的情況下才加載事件綁定被分配給你的jQuery對象。

+0

你的意思是'jQuery('') .bind('load',function(){ jQuery(「div.cb_div:eq(」+ item +「)」)。append(jQuery(this)); 。 ... }) .attr('src',src);'??? – user365351 2011-05-17 16:28:54

+0

是的,因爲當您設置「attr」屬性時,導航器開始下載圖像。如果此圖像存在於導航器緩存中,則下載速度非常快。 – 2011-05-17 19:18:42

+0

謝謝!我想你是正確的 :-) – user365351 2011-05-19 06:43:07