file_child-src_worker_data.html (1004B)
1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <title>Bug 1045891</title> 5 </head> 6 <body> 7 <script type="text/javascript"> 8 page_id = window.location.hash.substring(1); 9 try { 10 worker = new Worker('data:application/javascript;charset=UTF-8,'+escape('onmessage = function(e) { postMessage("worker"); };')); 11 12 worker.onerror = function(e) { 13 window.parent.postMessage({id:page_id, message:"blocked"}, 'http://mochi.test:8888'); 14 e.preventDefault(); 15 } 16 17 worker.onmessage = function(ev) { 18 window.parent.postMessage({id:page_id, message:"allowed"}, 'http://mochi.test:8888'); 19 } 20 21 worker.postMessage('foo'); 22 } 23 catch (e) { 24 if (e.message.match(/Failed to load script/)) { 25 window.parent.postMessage({id:page_id, message:"blocked"}, 'http://mochi.test:8888'); 26 } else { 27 console.log(e); 28 window.parent.postMessage({id:page_id, message:"exception"}, 'http://mochi.test:8888'); 29 } 30 } 31 </script> 32 </body> 33 </html>