2011-02-23 92 views
0

我有一个图像,out.jpg,即每秒更新或更新。我希望图像显示在HTML文件中,并始终保持最新状态。我原来的解决方案是每半秒重新载入一次图像。这工作正常,但图像会在加载时闪烁白色一秒。Javascript Image Reloading;闪烁

任何解决方案?

我想做些什么来解决,这是对图像加载到一个单独的隐藏<img>标签,然后将其加载到可见<img>标签,让它从缓存中打开它,消除闪烁。这部分时间是有效的,但通常out.jpg会从隐藏标记加载它和可见标记加载它时发生变化...导致更多闪烁。

回答

2

你这样加载图片?

可能一些预载技术是你需要的。你可以在jquery中创建一个图像,并将load()事件绑定到它。只有当事件触发你交换图像的img.src在HTML

http://api.jquery.com/load-event/

+0

此解决方案在我身边闪烁。 ESP。如果图像变大,则从载入事件触发到IMG在屏幕上显示可能需要10秒。 – Tino 2015-04-19 22:56:48

1

这是我会怎么做: 使负载在一个隐藏的股利。在该图像上放置一个事件,以便每当它完全加载时,它将被设置为另一个img标签的src,或者甚至作为a的背景。

然后,我会确保只有在图像已完全加载后才会倒计时0.5-1秒,以便具有较慢互联网连接(或几次同时下载)的用户不会再次重新加载新图像然后再次。