HTML5 LocalStorage存储可执行脚本

时间:2015-08-27 03:24:08

标签: javascript jquery angularjs html5 cordova

我正在开发混合应用程序,其中包含它自己的本地html& JS文件。但是,有时需要从服务器加载一些小的可执行JS脚本甚至CSS。目前我正在使用$.getScript进行此操作并且工作正常。

为了让应用程序脱机工作,我想使用Angular缓存来存储json数据和图像。但是,如何将可执行脚本存储在localStorage中,以便以后可以在离线模式下使用?

1 个答案:

答案 0 :(得分:1)

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);
});