无法将javascript库导入Web worker

时间:2013-07-01 00:01:33

标签: javascript import web-worker

我无法使用importScripts()将任何库导入到我的javascript Web worker中。当我导入我自己单独的javascript文件时它工作正常,但当我尝试导入一个单独的库,如jquery或easeljs时,它给出了我的错误: 未捕获的ReferenceError:文档未定义

然而,在我连续检查它之后,它显然是正确定义的。有人知道出了什么问题。谢谢。

2 个答案:

答案 0 :(得分:3)

Webworkers无法引用DOM的原因是,它们只能通过消息与调用者脚本进行通信。 jQuery对DOM进行了明确的引用,因此您无法在Webworker中使用它。我建议你看一下jQuery创建者John Resig关于WebWorkers的博客文章:http://ejohn.org/blog/web-workers/

答案 1 :(得分:2)

Web Workers对DOM对象和方法的访问权限非常有限,并且完全无法访问jQuery和easeljs都需要的全局document对象。

我不能说画架,但是对于jQuery,有一个1.6.3的端口,它是在没有web worker-unsafe代码的情况下编译的。它可以找到here