我正在尝试实现HTML5 WebWorker,我正在使用rails 3.我在我的js代码中有这个:
//当body(DOM)准备就绪时
$(function() {
....
..
//test html5 webworkers
$('#test_html5_workers').click(function() {
var worker=new Worker('play.js');
worker.addEventListener('message', function(e) {
console.log('Worker said: ', e.data);
}, false);
worker.postMessage('Hello World'); // Send data to our worker.
});
..
....
)};
在另一个文件中我有这个(在play.js中)
self.addEventListener('message', function(e) {
self.postMessage(e.data);
}, false);
我目前收到此错误:
找不到脚本文件:play.js
我尝试过其他文件路径名,但没有运气。
任何想法为什么我得到这个,因为两个文件都在同一个目录,assets / javascripts? 我使用的是Firefox 17.0.1
答案 0 :(得分:0)
javascript文件(play.js)应该放在公共文件夹中,或者至少是我为了让它工作而做的事情。
答案 1 :(得分:-1)
这适用于我的。
(function() {
//test html5 webworkers
$('#test').on('click', function(){
if(window.Worker){
var worker = new Worker('test.js');
worker.onmessage = function(e){
alert('worker said: ' + e.data);
}
worker.postMessage('start');
}
});
})();
//test.js
self.onmessage = function(e){
if(e.data === 'start'){
self.postMessage('booyeah');
}
}