Web Workers allow you to run JavaScript code in the background without blocking the web page user interface. Web workers can improve the overall performance of a web page and also enhance the user experience.
In the example below, the intensive work is in the script lengthytask.js
and it is invoked through a button click. This runs in the background without impacting the performance of the web page.
$(document).ready(function () { if (Modernizr.webworkers) { $("#buttonCompute").click(function () { var worker = new Worker("scripts/lengthytask.js"); worker.addEventListener("message", function (evt) { //cb },false); worker.postMessage(); }); });