HTML5 LocalStorage存储可执行脚本

HTML5 LocalStorage store executable scripts

本文关键字:脚本 可执行 存储 LocalStorage HTML5      更新时间:2023-09-26

我正在开发混合应用程序,其中包含它自己的本地html &JS文件。然而,有时需要从服务器加载一些小的可执行JS脚本甚至CSS。目前我正在用$.getScript做它,它工作得很好。

为了使应用程序能够离线工作,我正在考虑使用Angular缓存来存储json数据和图像。然而,我怎么能存储可执行脚本可能与localStorage,以便它可以在以后的离线模式下使用?

LocalStorage存储文本,因此您确实可以在那里存储JS代码(这只是文本)。

你只需要从LocalStorage加载它,然后要么用eval()执行它,要么创建一个<script>标签并将脚本插入其中。

下面是一个工作示例:http://jsfiddle.net/jfriend00/1rLcaroc/

它的代码是:

var str = "alert('hello');";
document.getElementById("test").addEventListener("click", function() {
    localStorage.setItem("code", str);
    var code = localStorage.getItem("code");
    eval(code);
});