1

要知道图像是否在缓存中,可以在 Firefox 中使用 mozIsLocallyAvailable()。chrome或IE没有这样的东西。

你知道其他方法吗?

我尝试使用 Ajax 检查“304 未修改”,但 Ajax 似乎有自己的缓存系统。(每次关闭浏览器,ajax缓存都会被删除)

我的目标是检测我的访问者何时清理了他们的缓存,这样我就可以重新启动我的“后台预加载”系统(适用于具有大量图像的游戏)。我听说过一些关于 AppCache 的信息,但还不足以知道它是否可以存储多达 40mb 的图像,以及它是否可以在页面完成加载后下载它们。

问候。

4

2 回答 2

1

鉴于您所说的最终目标,我认为我要做的是让后台(预)加载过程始终发生,如果它没有在(比如说)250 毫秒或 500 毫秒内完成,请留言告诉用户发生了什么。如果在很短的时间内加载所有 40MB 的图像,您可以相当肯定它们来自缓存。:-) 相反,如果它们的加载时间超过 500 毫秒(半秒),那么您并不真正关心是因为它们正在被下载,还是由于某种原因用户的缓存真的很慢,您仍然可能想要告诉他们发生了什么事。

于 2013-04-10T17:14:37.090 回答
0

我的目标是检测我的访问者何时清理了他们的缓存,这样我就可以重新启动我的“后台预加载”系统

您可以在每个会话中预加载图像。如果浏览器将它们放在缓存中,则不会再次加载它们。只要确保您发送正确的标题

于 2013-04-10T17:14:53.030 回答