重新加载图像不会刷新

时间:2011-01-12 18:27:46

标签: javascript jquery ajax

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

嗨,

我想每5秒重新加载一个图像,但这不起作用,它保持不变,但当你F5页面时它会刷新。如何通常每隔5秒刷新一次图像更新?

2 个答案:

答案 0 :(得分:6)

它已缓存,因此无需重新加载。如果你想强制重新加载,你需要让浏览器认为它是一个不同的文件:

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

答案 1 :(得分:1)

是否存在尊重http缓存的解决方案?如果图像有时只会改变,那么强迫每个客户端完成重新加载会很棒。

E.g。我有一个网络摄像头图片每5秒更新一次。即使每个客户端每5秒重新加载一次?dateMillis,中间缓存仍然无法在客户端之间正确地重用数据。允许标准缓存超时(甚至是etag检查)可以节省大量资源。