2011-08-26 21 views
1

我的問題是相當基本的,但我找不到它。無法預處理<img> Pixastic

我有圖像的相當大的圖書館在我的網站上顯示,所以我寫了一個jQuery腳本掃描的文件夾,收集圖片的來源,並把它們在正確的地方背景圖像。這是完美的。

我的第二個步驟是在前面加上它上面的圖像的拷貝,並用Pixastic庫處理它。我試着用的代碼如下所示:

function blurBackground() { 
$wrapper2.prepend('<img class="blur" src="'+$sourceImage+'" />'); // great, a copy of the image is set! 
    $('.blur').load(function() { // execute on load 
     $('.blur').pixastic("blur").css('border','10px solid red'); // failed to process with pixastic, succeded to edit css 
    }); 
} 

如果我有我的標記一切現有<img src="something.jpg" class="blur" />完美的作品,即使我剝功能下降,並且只使用代碼:

function blurBackground() { 
$('.blur').pixastic("blur"); 
} 

問題我無法處理任何預先或附加的圖像。

我不知道我在做什麼錯。 $ sourceImage是100%正確的,並且該圖像在執行該函數之前總是被緩存。

+0

你的意思是它的返回緩存圖像,並且你想避免緩存? – Usman

+0

它正在返回緩存的圖像。第一個函數使用var $ sourceImage(當然包含圖像的src)設置div的背景圖像。如果需要,會觸發函數blurBackground(),並使用與現有圖像相同的$ sourceImage在其上設置副本並稍後處理它。 –

+0

你可以在更改src之前試試這個,它會欺騙瀏覽器並強制避免緩存'd = new Date(); $ sourceImage + ='?'+ d.getTime();' – Usman

回答

0

它看起來像我需要這樣做,在.load事件處理程序中指定this圖像與類.blur

$('.blur').load(function() { 
    $(this).pixastic("blur").css('border','10px solid red'); 
}); 
+0

沒有效果。我會編輯一個問題給予額外的細節,看看:) –