1

我正在创建一个 HTML5 游戏。该游戏是跨平台的,并且针对具有不同屏幕分辨率的设备具有不同的图形集。质量较低的套装适用于手机,另一套适用于平板电脑和个人电脑。

现在我想让我的应用程序使用 appcache 清单离线工作。自然,我只想缓存所需的图形集,因此我需要根据 User-Agent 字符串选择应该使用的清单文件。

我试图通过iframe有条件地加载 html 文件来欺骗它,但没有运气——缓存只保存在主清单中。

有谁知道如何根据设备选择不同的清单文件?

UPD 在 [Diveintohtml5 Offline Section 1中有一个清单示例:

CACHE MANIFEST
FALLBACK:
/ /offline.html
NETWORK:
*

据我了解,它应该进行延迟加载,并将仅在应用程序联机时请求从应用程序加载的项目添加到缓存中。这个解决方案似乎解决了我的问题,因为我只能加载所需的图形集。然而,在 Chorme 和 iOS Safari 上的实践中,离线缓存除了 offline.html 之外根本没有资源。

4

1 回答 1

1

如果您的应用程序有服务端部分,只需为不同的代理发送不同的清单。如果它没有服务器,只需为每个代理制作不同的应用程序包。无论如何,仅使用缓存清单文件无法检查代理并提供不同的资源。

于 2011-11-15T14:06:03.187 回答