2013-04-30 115 views
23

我曾嘗試使用importScripts將第二個JavaScript文件加載到我的web worker中,但是雖然沒有發生錯誤,但它沒有工作。我將問題範圍縮小到這個非常簡單的情況:importScripts(網絡工作者)

在主HTML文件:

<script> 
var w = new Worker("script1.js"); 
w.addEventListener("message", function(e){ 
    alert(e.data); 
}) 
w.postMessage(); 
</script> 

在script1.js:

self.addEventListener("message", function(e){ 
    var a = 5; 
    importScripts("script2.js"); 
    self.postMessage(a); 
}) 

在script2.js:

a = 6 

我想看到一個顯示6的對話框,因爲通過導入script2.js將a從5更改爲6,但對話框顯示5。我在這裏錯過了什麼?

+0

莫非importScripts(「SCRIPT2」 .js文件「)後再行; - > self.postMessage( a);不再是指正確的自己,因爲你輸入了那個? – 2013-04-30 23:21:59

回答