2011-02-09 46 views
0

我使用的網站縮略圖生成服務,我拉出縮略圖使用JavaScript這樣的:的jQuery/JavaScript的 - X秒後刷新圖像

$("body").append("<img class="thumbnail" src='http://s.wordpress.com/mshots/v1/"+url+"?w=200' width='200' />");

它工作正常,但如果第一次生成縮略圖時,我收到了「生成預覽...」消息,並且必須刷新頁面才能看到圖像。

那麼有沒有一種方法可以在我們說5秒後「刷新」圖像,何時應該已經生成?

回答

3

我猜你可能一個無用的參數附加到URL無效瀏覽器緩存,並設置src屬性。這將是最好把你的電話appendappendTo呼籲爲此,我認爲

$img = $('<img class="thumbnail" src="http://s.wordpress.com/mshots/v1/'+url+'?w=200" width="200" />').appendTo(document.body); 
setTimeout(function(){ 
    $img.attr('src', function(i, oldSrc){ 
     return oldSrc + '&_=reload'; 
    }); 
}, 5000); 
1

您正在尋找Javascript setTimeout方法。

1

是的,你可以使用setTimeout()funkcion。要強制形象重裝,你應該在圖像的補丁的末尾加上一個隨機參數,例如,

domain.com/image.jpg?random_param=random_number 
1

這將在你的情況下工作。把你的圖片放在一個「div」中,然後調用以下函數

function timestamp() { 
    var id = //get_element from the div 
    $("#id").append("<img class="thumbnail" src='http://s.wordpress.com/mshots/v1/"+url+"?w=200' width='200' />"); 
setTimeout("timestamp()", 60000); 
}