<p>计数:<output id="result"></output></p> <button onclick="startWorker()">开始 Worker</button> <button onclick="stopWorker()">停止 Worker</button>
/** * web worker */ var w; function startWorker(){ if (typeof(Worker)!=="undefined"){ if (typeof(w)=="undefined"){ w = new Worker("/js/demo_workers.js"); } w.onmessage = function (event) { alert('a'); document.getElementById("result").innerHTML = event.data; } } else { document.getElementById("result").innerHTML = "Sorry, your browser does not support Web Workers..."; } alert('b'); } function stopWorker() { w.terminate(); }
/js/demo_workers.js
postMessage(1);
先alert b 后a,类似于ajax异步,如果页面js过多影响页面加载,可以考虑此方法