每隔x秒自动更新一次php图像

时间:2014-12-21 18:39:25

标签: javascript php jquery html

所以我有一个包含php作为正文背景的div。 让我们说出它的image.php

image.php根据小时/日/月显示不同的图像

现在如果我的网站保持打开状态超过一个小时,仍会显示相同的图像,而不是它应该如何。

然而,显示图像是有效的,它没有更新,坦率地说,我不太清楚如何处理这个问题。

所以在这里我并没有要求有人为我制作这个脚本,而是指向我正确的方向,让脚本完全重新加载php文件。

提前谢谢!

编辑:很抱歉让它不清楚,我真的只需要指定的div bg来完全重新加载,而不是整个网页。那就是我不得不创造这个。

我知道如何更新图片但据我所知,该图片已经在加入网站时加载,因此无法进一步更新,因为图片放置后重新加载整个页面也是不行的在标题中,标题未在页面导航上更新,因为它包含音频播放器

2 个答案:

答案 0 :(得分:0)

在页面的<head>部分添加以下内容:

<meta http-equiv="refresh" content="3600">

这将在3600秒或一小时后刷新页面。

或者您也可以使用Javascript:

setTimeout(function() {window.location.reload()}, 3600*1000);

这将在3600 * 1000毫秒后重新加载,也就是一小时。

或者您只能通过修改其src属性来重新加载图像。您需要绕过浏览器缓存,这通常是通过添加&#39; cachebust&#39;基于当前Unix时间戳的GET变量:

document.getElementById('myimage').src = '/path/to/image.php?cachebust=' + Date.now();

结合第二种和第三种方法产生:

setTimeout(function() {
    document.getElementById('myimage').src = '/path/to/image.php?cachebust=' + Date.now();
}, 300*1000);

这将每5分钟仅重新加载指定的图像。

答案 1 :(得分:0)

您可以使用 Ajax轮询。这是一个解释它的link答案。你可以这样做:

  1. 创建时间段为t的ajax轮询功能。

  2. 将此Ajax调用发送到php文件,该文件将为您的#bg元素生成链接。

  3. 在此ajax调用成功后更新您的图片。