2015-05-03 174 views
2

我有這裏的代碼,我有一個滑塊縮略圖和滑塊大圖像將其下一個attr('src')從點擊拇指,但我想改變該src只有當圖像已經加載。這是我想出來的,到目前爲止來源:如何檢查圖像url是否已經加載jQuery?

$('.thumb').click(function(){ 
    topImageSrc = $(this).data("bigimage"); 

    $(topImageSrc).load(function(){ 
     coverMain.attr('src',topImageSrc); 
     main.fadeOut("slow"); 
    }) 
}); 

可悲的是,這並不爲topImageSrc的工作僅僅是一個路徑變量的大圖像,像這樣:/uploads/largeimages/pic1.jpg

怎麼可能我強制它加載,然後檢查它是否完成,然後應用新圖像?

回答

2

你可以這樣說:

$('.thumb').click(function() { 
    topImageSrc = $(this).data("bigimage"); 
    var topImage = $('<img>').attr('src', topImageSrc); 
    $(topImage).load(function() { 
     coverMain.attr('src', topImageSrc); 
     main.fadeOut("slow"); 
    }); 
}); 

這將創建一個圖像(而不會有任何附加的話),設置它的源到topImageSrc URL,並檢查了load事件。

+0

我想這應該工作,但我得到'未捕獲的錯誤:語法錯誤,無法識別的表達式:/ uploads/largeimages/pic1.jpg' – Xeen

+0

您是否直接添加該URL?好像你在URL中缺少引號*。 –

+0

'topImageSrc ='/uploads/largeimages/pic1.jpg';' –

相關問題