没有createElement的动态javascript注入

时间:2010-06-28 05:34:18

标签: javascript multithreading google-gears

在Google Gears API中的“线程”上下文中运行代码时,您无法访问“文档”对象,因此无法使用createElement动态加载脚本。 / p>

有没有人对如何在这种情况下“注入”代码有任何想法?我能想到的唯一方法是使用Web服务和JSON对象,然后我会评估它,但这会产生一系列问题和复杂性,并在我的嘴里留下不好的味道。

问题是由于这种限制,我最终会遇到大量单片代码和各种代码重复,而且我不想讨论更多内容。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

无需使用Web服务,只需使用纯XMLHttpRequest检索javascript文件,然后评估它。

var xhr = new XMLHttpRequest();
xhr.open("foo.js", null, false); // since this is in a thread you can use the synchronous approach
xhr.send("");
eval(xhr.responseText);