我正在嘗試使用JavaScript預加載圖像。我宣佈一個陣列,來自不同地方的圖像鏈接如下:如何讓Mozilla Firefox預載最終的圖像結果?
var imageArray = new Array();
imageArray[0] = new Image();
imageArray[1] = new Image();
imageArray[2] = new Image();
imageArray[3] = new Image();
imageArray[0].src = "http://www.bollywoodhott.com/wp-content/uploads/2008/12/arjun-rampal.jpg";
imageArray[1].src = "http://labelleetleblog.files.wordpress.com/2009/06/josie-maran.jpg";
imageArray[2].src = "http://1.bp.blogspot.com/_22EXDJCJp3s/SxbIcZHTHTI/AAAAAAAAIXc/fkaDiOKjd-I/s400/black-male-model.jpg";
imageArray[3].src = "http://www.iill.net/wp-content/uploads/images/hot-chick.jpg";
圖像褪色和變換效果,我用這個陣列正常工作的第3個圖像做,但最後一個,imageArray[3]
,圖像的實際圖像數據沒有預先加載,並且完全破壞了效果,因爲實際的圖像數據僅在需要顯示時加載AFTERWARDS。
發生這種情況是因爲最後一個鏈接http://www.iill.net/wp-content/uploads/images/hot-chick.jpg
不是圖像的直接鏈接。如果您轉到該鏈接,您的瀏覽器會將您重定向到ACTUAL位置。現在,我在Chrome中的圖像預加載代碼工作得非常好,效果看起來很棒。因爲Chrome似乎會預先載入實際數據 - 即將顯示的EVENTUAL圖像。這意味着在Chrome中,如果我預裝了一個將重定向到「停止竊取我的帶寬」的映像,那麼預加載的映像就是「停止竊取我的帶寬」。
我該如何修改我的代碼才能使Firefox的行爲方式相同?