0

我的 jsp 文件中有以下 div

<div id="myDiv">
    <img alt="" src="http://localhost:8080/chartDemo/servlet/ChartDemoServlet">
</div>

我想每隔一段时间自动刷新图像。

我已经尝试过<meta http-equiv="Refresh">它完美无缺,但刷新了整个页面。

如何仅刷新图像?

4

5 回答 5

4

我想每隔一段时间自动刷新那个 div。

有什么内容?还是img每次都变?

如果是这样的话:

setInterval(function() {
    $("#myDiv").html('<img alt="" src="http://localhost:8080/chartDemo/servlet/ChartDemoServlet">');
}, 1000);

...应该每秒执行一次(1000ms = 1 秒),前提是img's srcURL 返回的数据的缓存标头正确(否则,浏览器可能会缓存早期版本)。div这样做是完全拆除img.

于 2012-05-25T10:53:51.123 回答
3
setInterval(function() {
  // use to prevent browser cache
  var d = new Date();
  $("#myDiv img").attr("src", "http://localhost:8080/chartDemo/servlet/ChartDemoServlet?"+d.getTime());
}, 3000); // every 3 seconds.
于 2012-05-25T10:52:50.717 回答
0

您需要使用 window.setInterval 计时器。在该函数中,您可以更改 img src。像这样的东西

//timer function
window.setInterval(refreshImage,1000);

function refreshImage()
{
     $('#urdiveid img').attr('src')='new location';
}
于 2012-05-25T10:55:00.513 回答
0
<div id="myDiv" onload="JavaScript:timedRefresh(5000);">
        <img alt=""
            src="http://localhost:8080/chartDemo/servlet/ChartDemoServlet">
    </div>

把它放在javascript中

function timedRefresh(timeoutPeriod) {
    setTimeout("location.reload(true);",timeoutPeriod);
}
于 2012-05-25T10:56:06.547 回答
0

可以通过 JavaScript 超时功能来完成

var t=setTimeout("functiontoCall()", 3000)

您可以编写自己的 inFunctiontoCall()以在myDiv. 它可以是 ajax 调用或简单的 Dom 操作

于 2012-05-25T10:59:03.540 回答