0

我对做这个跨域很感兴趣。

我想知道如何获取源代码,在下载并执行它之后

<script src = "libary_i_want_to_cache">

script 标签,并将此源放入 localStorage。

localStorage.script_source = the_source;

我知道浏览器等提供的所有其他缓存机制,但在这种特殊情况下,我想将我的脚本存储在 localStorage 中。

我可以使用脚本标记参数吗?

我检查了MDN,但没有找到。使用 cors 是否相关?

谢谢,

4

3 回答 3

1

我不知道没有 ajax 有任何方法可以做到这一点。脚本标签本身不提供对其下载的脚本源的访问。

如果您的脚本来自与您的网页相同的域并且您愿意使用 ajax,那么您可以使用 ajax 来检索脚本的文本,然后您可以将该文本存储在本地存储中。

要从本地存储加载脚本,您需要将本地存储中的脚本读取到字符串变量中,然后使用eval()它来解析/执行它。

综上所述,浏览器的内置缓存机制似乎更合适,除非您帮助我们了解为什么它们不适合您。

于 2013-02-13T15:25:49.013 回答
1

通常,浏览器会为你做缓存,给定来自服务器的正确缓存头。

此外,在这种情况下,您所说的应用程序缓存更合适。

于 2013-02-13T15:20:22.767 回答
0

是的,您可以使用 localStorage 来存储 javascript。设置 innerHTML 将执行脚本内容,但更好的方法是使用 window.URL.createObjectURL 设置为 src。

于 2013-02-18T05:41:23.670 回答