您的第一个选项是cache manifest.它有一些限制(如缓存的大小),但可能适用于您,因为它旨在做你想要的。
另一种选择是您可以使用文件系统API将设备内容存储在设备的磁盘上。这有一些缺点,如安全性,以及您必须从路径/ url加载文件,该路径/ url与通常从网络上加载文件不同。查看hydra插件的一个例子。
最后一个选择可能是在localStorage中存储东西(这有利于在所有平台上都是私有的),然后在需要的时候将其拉出来,这意味着base64所有的图像都是相当大的偏离从标准缓存。