javascriptライブラリを読み込むことができます。次の例を参照してください。
<body>
<button>Start</button>
<div id="output"></div>
<script id="worker_1" type="text/js-worker">
importScripts(base_url + '/worker_lib2.js');
function run(event) {
var msg = event.data;
this.postMessage({ answer: hello(event.data.name)});
}
this.addEventListener('message', run, false);
</script>
<script>
var base_url = window.location.href.replace(/\\/g,'/').replace(/\/[^\/]*$/, '');
var array = ['var base_url = "' + base_url + '";' + $('#worker_1').html()];
var blob = new Blob(array, {type: "text/javascript"});
$('button').click(function() {
var url = window.URL.createObjectURL(blob);
console.log(url);
var worker = new Worker(url);
worker.addEventListener('message', function(event) {
$('#output').html(event.data.answer);
}, false);
worker.postMessage({
name: 'Steve'
});
});
</script>
</body>
hello関数を含むworker_lib2.jsライブラリを使用します。
function hello(msg) {
return 'Hello... ' + msg;
}
でも、音声タグにmp3を読み込むには時間がかかります。労働者はその可能性のある解決策でしたが、DOMを持っていませんでした。だから、どのように私はファイルの期間を読むことをお勧めしますか?包含についてはどうですか?必然的にハック場合:O – Achshar
私は私の答えにさらに追加しました。 – jfriend00
よくincludeから私は、 '私は' function.jsを持っていることを意味しました。これは、アプリケーションの関連性の高い機能をたくさん持っていて、ファイルの内容をワーカーにコピーするのは意味がありません([1]で説明したように)私は必要なものです、ありがとう! 'hack'からは、ファイルの内容を読み込んでevalに追加するようなことがありました。 (はい、私はそれが悪いと知っているが、それは理由のためにハックされていただろう)それは私がimportscriptsについて読むまでだった。申し訳ありませんが、私の質問が不満を感じる場合は、私は労働者に新しいです。:O – Achshar