请记住,我以前从未使用过网络工作者,并且在绕过他们时遇到了一些麻烦。网络工作者的限制
下面是我在做什么的简化版本的解释。
我的页面有链接到的各种文件 - 有些是文字,有些是图像等每个文件显示通用文件图标的图像。
我希望脚本与该文件的内容的预览替换每个通用图标。
脚本会向服务器请求文件(从而将其添加到缓存中,就像预加载器一样),然后创建一个画布并在其上绘制预览(图像的缩略图,文本文件的摘录,媒体文件的更具体的图标...),最后用画布使用数据URL替换通用图标的源代码。
我可以很容易地做到这一点。不过,我宁愿将它放在后台,以免在用户界面运行时干扰用户界面。
之前我吧;这一点,我需要知道:能工人用帆布工作,如果是的话我将如何创建?我不认为document.createElement('canvas')
会工作,因为工人不能访问DOM,或者我误解了所有我发现的引用说他们“无法访问DOM”?
你的意思是你无法加载图像?就像下载它们或将它们显示为“img”一样? – ozanmuyes 2014-01-13 00:01:22
@dihejaso - 网络工作者限制他们可以做什么,不可以做什么。他们不能创建DOM元素。 – jfriend00 2014-01-13 00:05:55
好了,现在清楚了;我们可以通过XHR下载任何东西,但DOM受到限制。由于'postMessage()'函数存在,DOM更新可以通过封装源文件来实现。 – ozanmuyes 2014-01-13 05:47:01