我正在尝试实现HTML5 WebWorker 并且我正在使用rails 3。我的js代码中有这个:
当主体(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.
});
..
....
)};
在另一个文件中,我有这个(在播放.js)
self.addEventListener('message', function(e) {
self.postMessage(e.data);
}, false);
我目前收到此错误:
找不到脚本文件:播放.js
我尝试过其他文件路径名,但没有运气。
知道为什么我会得到这个,因为两个文件都在同一个目录中,资产/javascripts?我正在使用火狐 17.0.1
javascript 文件(play.js)应该放在公共文件夹中,或者至少这是我为了让它工作所做的。
这
适用于我的。
(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');
}
}