2012-12-10 62 views
2

我想实现一个HTML5 WebWorker,我使用的轨道3.我在js代码有这样的:HTML5 WebWorker和Rails 3错误

//当体(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); 

我目前正在此错误:

Script file not found: play.js

我已经尝试过其他文件路径名称,但没有运气。

任何想法,为什么我得到这个,因为这两个文件都在同一目录assets/javascripts? 我正在使用Firefox 17.0.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'); 
    } 
} 
+0

我创建了一个新文件,将第一个代码放入,将第二个文件放在另一个名为'test.js'的文件中, –

0

javascript文件(play.js)应该放在公共文件夹中,或者至少这是我所做的工作。