相关疑难解决方法(0)

Chrome无法加载网络工作者

我正在开发一个使用Web worker的项目.

在我的脑子部分,我有这个代码:

var worker = new Worker("worker.js");
// More code
Run Code Online (Sandbox Code Playgroud)

这在Safari中运行良好,但Chrome报告以下错误:

Uncaught SecurityError: Failed to create a worker: script at '(path)/worker.js' cannot be accessed from origin 'null'.

为什么这在Safari中完美运行而不是Chrome?我该如何解决?

谢谢.

javascript google-chrome web-worker

100
推荐指数
9
解决办法
6万
查看次数

HTML5 Web Workers可在Firefox 4中使用,但不适用于Chrome 12.0.742.122

当我尝试在HTML5中使用Web Workers功能时,我的firefox工作愉快,但chrome抱怨:

未捕获的TypeError:无法调用未定义的方法'postMessage'xstartWorkerworker.html:7(匿名函数)worker.html:1 onclickworker.html:2

worker.html

<button onclick="xstartWorker()">Start worker</button>
<output id="result"></output>
<script>
function xstartWorker()
{
  worker.postMessage({'cmd': 'startWorker', 'msg': 'Start now!'});
}

var worker = new Worker('worker.js');

worker.addEventListener('message', function(e)
  {
      document.getElementById('result').textContent = e.data;
  }
  , false);
</script>
Run Code Online (Sandbox Code Playgroud)

worker.js

self.addEventListener('message', function(e)
{
  var data = e.data;
  switch (data.cmd)
  {
    case 'startWorker':
      self.postMessage('worker thread start now:' + data.msg);
      break;
    default:
      self.postMessage('default');
  }
}
, false);
Run Code Online (Sandbox Code Playgroud)

我能做些什么让它在chrome中运行?

顺便说一下,当我在http://playground.html5rocks.com/#inline_workers上试用这个样本 并且这次chrome工作时,但是firefox抱怨说

错误:worker未定义源文件:http: //playground.html5rocks.com/ Line:39

javascript firefox html5 google-chrome

9
推荐指数
2
解决办法
3888
查看次数

为什么Chrome不允许Web Worker在JavaScript中运行?

如果我尝试通过JavaScript文件使用网络工作者,Chrome会抛出错误 -

Uncaught SecurityError:无法创建worker:'(path)/worker.js'中的脚本无法从origin'null'访问.

但是如果我们直接使用HTML,它就允许它们.

Chrome上的答案无法加载网络工作者说Chrome在从本地文件运行脚本时不允许您加载Web工作者.

为什么chrome不允许Web worker在本地运行?

Web Workers在Firefox,Safari和Edge中完全正常工作

html javascript google-chrome web-worker

2
推荐指数
1
解决办法
9218
查看次数

标签 统计

google-chrome ×3

javascript ×3

web-worker ×2

firefox ×1

html ×1

html5 ×1