2012-06-27 131 views
0

我有一個mouseover腳本的問題。一切正常,但我有一個小問題,我不知道如何解決。更確切地說,mouseover腳本創建灰度圖像懸停效果。當頁面加載彩色圖像顯示一小段時間(1秒或更短),然後JavaScript應用,他們都變灰,這正是應該如何工作。mouseover.js加載灰度圖像

我該如何製作彩色圖像,才能在應用javascript之前顯示彩色圖像?基本上,我希望灰度圖像在頁面加載之後不會出現。可能嗎?

您可以看到腳本here和問題here的網頁。

+0

您不應該鏈接。包括您的源代碼和示例。 –

+0

您的目標有衝突:等待圖像加載,以便您可以處理它們,並希望在加載之前處理它們。 –

+0

@MihaiStancu在大量源代碼的情況下他們應該怎麼做? –

回答

1

我會從HTML中刪除圖像並動態加載它們。

我會使用<a class="placeholder" href=""></a>作爲<img src="" />的佔位符,並且會將鏈接設置爲隱藏或設計良好。

$('a.placeholder').each(function() { 
    var src = $(this).attr('href'); 
    var image = new Image(); // this is not yet visible in the DOM. 
    image.onload = grayscale; // change the grayscale function to accept 
           // event parameters 
    image.src = src; // this triggers the onload event which 
            // grayscales the image 
    var dom_image = $('<img />').attr('src', src); 
    $(this).replaceWith(dom_image); 
}); 

當然,你必須做的準備文件不窗口負荷以上。