2017-08-01 172 views
0

我有如何在每个特定时间刷新图像? JavaScript的

<img src="http://www.hamqsl.com/solar101pic.php"> 

该图像一个简单的HTML页面的每一天,每一天

我怎样才能让我的网页更新获取更新本图片或每12小时

原因我想因为我用它在一个HTML控件 这并不更新它自己的JavaScript来更新它

+0

页面刷新是否也不更新图像? – Max08

+0

@ Max08如果我在浏览器中刷新页面图像得到更新 –

+0

@ Max08,但作为一个小部件,我没有一个点击刷新的选项 –

回答

-1

setInterval(function() { location.reload(); }, 5000);

更新

我觉得你的逻辑不会做的伎俩,因为浏览器开始计数当u打开从在特定的时间打开它不是那么你就那么图像会在12小时后更改要选择

  1. 设置图像URL在服务器端
  2. 上的时钟分配到每个小时的图像
+0

是的,这是真的即时改变它现在 –

+1

OP想要刷新一张图片,并且这里给出的4个解决方案中的3个建议重新加载整个页面。 Downvoted。 –

-1

window.location.reload(true)强制页面重新加载而不使用缓存版本。 (MDN

可以实现定时器是这样的:在setTimeout (MDN)

setTimeout(function(){ 
    window.location.reload(true); 
},4.32e+7); // 12 hours refresh rate. This is the time, in milliseconds. 

更多信息。

+1

OP想刷新一张图片,这里给出的4个解决方案中有3个建议重新加载整个页面。 Downvoted。 –

-1

您可以使用JavaScript的setTimeout函数,这将触发事件,一旦它击中指定的定时器(毫秒):

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

或者你可以用下面的meta标签(秒):

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

编辑:只是想到了一个更好的方法。如何使用jQuery删除元素,然后再次重绘元素?

+0

用户刷新其页面的用户体验相当差劲。我不会推荐这两种解决方案。 – Richie

+1

@Richie我们正在回答OP要求的内容。他没有要求UX优雅的解决方案,他要求我们刷新他的页面。 –

+1

@JeffNoel他不问如何刷新他的页面,他问如何更新图像。有没有突出的方法来做到这一点。 – Richie

0

你打算手动更新图像的链接吗?或者URL增量中的“101”?

如果链接是静态的,除了某种数字整数,那么我会使用JavaScript将HTML注入到您的网页上。检查:

var imgHtml = '<img src="http://www.hamqsl.com/solar101pic.php">'; 
document.getElementById('tag-id').innerHTML = imgHtml 

可以使用Date.now()函数来获得划时代的时间,然后用MOD(%)播放设置正确的时间间隔。这是你如何获得12小时。我会留给你看看。

+0

图像由网站的服务器更新 –

1

由于上this page解释,只使用一个缓存断路器重新加载图像:

const img = document.getElementById("myImage") 
 

 
setInterval(() => { 
 
    img.src = "http://www.hamqsl.com/solar101pic.php?" + new Date().getTime(); 
 
}, 1000*3600*12) // 12 hours in ms
<img id="myImage" src="http://www.hamqsl.com/solar101pic.php" />

通过在URL后加?randomstuff,你强制浏览器获取的全新副本文件,因为它没有被识别为在缓存中。

相关问题