Javascript 使用localStorage保存整个文件
我想使用Javascript 使用localStorage保存整个文件,javascript,html,local-storage,Javascript,Html,Local Storage,我想使用localStorage在主要用于移动设备的web应用程序中“缓存”一些JS和CSS文件(即带宽限制)。我想它会像这样工作: 页面加载一个小的setup.js,其中包含检查localStorage以查看以前是否存储了bigScriptFile.js。 如果未存储,则下载并存储bigScriptFile.js,以便下次访问 如果已存储,则从localStorage读取bigScriptFiles.js,并像下载普通文件一样加载/运行它(即) 我不确定如何执行步骤1.1——存储JS文件。(
localStorage
在主要用于移动设备的web应用程序中“缓存”一些JS和CSS文件(即带宽限制)。我想它会像这样工作:
setup.js
,其中包含检查localStorage
以查看以前是否存储了bigScriptFile.js
。
bigScriptFile.js
,以便下次访问localStorage
读取bigScriptFiles.js
,并像下载普通文件一样加载/运行它(即
)localStorage
中存储字符串,并且我知道如何使用JSON.stringify()
)
当然,这并不像使用escape()那么简单:localStorage.setItem('bigScriptFile',escape('myJScode'))
存储,以及unescape(localStorage.getItem['bigScriptFile'])
检索时
即使这么简单,我如何使用JS将bigScriptFile.JS的内容作为字符串获取?也许通过对返回内容的PHP脚本进行ajax调用?您应该将正确的缓存头放在js文件上,或者查看HTML5
。如果清除缓存,则必须重新下载文件。由于这个应用程序主要是在iOS设备上运行的,在这些设备上,Safari中打开的页面有时会被刷新以回收内存,所以我正在寻找一些更持久的东西。我意识到这意味着我需要一种方法来检查
localStorage
版本是否过期(如果是,请特意下载并存储新版本),但这应该不会太难。我更关心的是如何将整个JS文件可靠地存储为stringNo,缓存清单中的文件存储为脱机/以后使用。您可以关闭浏览器,并且正在重新下载的唯一文件是缓存清单文件。我保留不知道如何在Safari中实现这一点的权利,以确保缓存清单适用于脱机Web应用程序——如果清单发生更改,则浏览器必须验证所有资源。只要您的清单没有更改,所有文件都将保持活动状态,并且当浏览器无法连接到internet时,您的站点也将工作。谢谢大家。我想我误解了缓存清单,这可能是我应该走的路线。我想支持克里斯蒂安的回答,但我还没有足够的代表性。