2011-01-12 127 views
0
function updateimage(){ 
    $("#fileimg").attr("src","path/to/image.jpg"); 
    $('#fileimg').fadeIn('slow'); 
    setTimeout(updateimage, 5000); 
} 

嘿,刷新圖像不刷新

我要重新加載圖像每隔5秒,但不起作用,它保持不變,但是當你按F5頁面它來做刷新。我怎樣才能每5秒正常刷新一次圖像更新呢?

回答

6

它被緩存,所以它不需要重新加載。如果要強制你需要一個新的負載瀏覽器認爲這是一個不同的文件:

function updateimage(){ 
    $("#fileimg").attr("src","path/to/image.jpg?" + new Date()); 
    $('#fileimg').fadeIn('slow'); 
    setTimeout(updateimage, 5000); 
} 
+0

+1,spot on。但是你應該換行代碼以方便閱讀。 – 2011-01-12 18:32:49

1

有沒有尊重HTTP緩存的解決方案?如果圖像有時只會改變,那麼不強制每個客戶端都要完成重新加載。

E.g.我有一個攝像頭圖片,每5秒更新一次。即使每個客戶端每5秒鐘執行一次?dateMillis重新加載,中間緩存仍然無法在客戶端之間正確地重新使用數據。允許標準緩存超時(或甚至etag檢查)工作將節省大量資源。