index.html
<!DOCTYPE html> <html> <body> <p>Count numbers: <output id="result"></output></p> <button onclick="startWorker()">Start Worker</button> <button onclick="stopWorker()">Stop Worker</button> <br /><br /> <script> var w = null; function startWorker(){ if(typeof(Worker)!=="undefined"){ if(w==null){ w=new Worker("worker.js"); } w.onmessage = function (event) { document.getElementById("result").innerHTML=event.data; }; } else{ document.getElementById("result").innerHTML="Sorry, your browser does not support Web Workers..."; } } function stopWorker(){ if(w==null){ return; } w.terminate(); w = null; } </script> </body> </html>
worker.js
var i=0; function timedCount(){ i=i+1; postMessage(i); setTimeout("timedCount()",500); } timedCount();