Typo error:
...
worker.onmessage = function(event) {
var url = e.data.replace(/_/g, "/");
e is not defined ... you probably meant function(e)
or event.data.replace
UPDATE
Window don't have the postMessage method ... you need to use the worker method worker.postMessage