JSFiddle - React, Tailwind, and code Playground
Window is not defined inside a Web Worker
by skibulk
HTML
<button id="openWindow">
Open Window
</button>
JavaScript
// Window is not defined inside a Web Worker
function createWorker( fn )
{
var blobURL = URL.createObjectURL(
new Blob(
[ '(' + fn.toString() + ')()' ],
{ type: 'application/javascript' }
)
);
worker = new Worker( blobURL );
URL.revokeObjectURL( blobURL );
return worker;
}
function getWindow()
{
onmessage = function( event ){
postMessage("Nice to meet you");
var popup = window.open("about:blank");
popup.blur();
window.focus();
}
}
var openWindow = document.getElementById("openWindow");
openWindow.onclick = function( event ){
var myWorker = createWorker( getWindow );
worker.onmessage = function( event ){
console.log(event.data);
}
worker.postMessage( "Hello" );
};