我想使用 localStorage
在主要用于移动设备的网络应用程序中“缓存”一些 JS 和 CSS 文件(即带宽限制)。我认为它会像这样工作:
- 页面加载了一个小的
setup.js
包含检查localStorage
的代码看看是否bigScriptFile.js
先前已存储。- 如果未存储,
bigScriptFile.js
下载并存储以供下次访问。 - 如果已存储,则
bigScriptFiles.js
从localStorage
读取并像下载普通文件一样加载/运行(即<script src="http://example.com/bigScriptFile.js"></script>
)
- 如果未存储,
我不确定如何执行步骤 1.1——存储 JS 文件。 (我知道我只能在 localStorage
中存储字符串,而且我知道如何使用 JSON.stringify()
。)
肯定不是使用escape()那么简单:
localStorage.setItem('bigScriptFile', escape('myJScode'))
存储,和
unescape(localStorage.getItem['bigScriptFile'])
检索时
就算这么简单,我如何使用JS将bigScriptFile.js的内容以字符串的形式获取呢?也许通过对返回内容的 PHP 脚本进行 ajax 调用?
最佳答案
您应该将正确的缓存 header 放在 js 文件上或查看 HTML5 cache manifest .
关于javascript - 使用 localStorage 保存整个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4369351/