iframe_messageChannel_transferable.html 575 B

123456789101112131415161718192021222324252627
  1. <!DOCTYPE HTML>
  2. <html>
  3. <body>
  4. <script type="application/javascript">
  5. function ok(what, msg) {
  6. window.parent.postMessage({type: what ? 'OK' : 'KO', msg: msg }, '*');
  7. }
  8. window.addEventListener('message', receiveMessage, false);
  9. function receiveMessage(evt) {
  10. ok(evt.ports.length == 1, "Port transferred!");
  11. var a = new MessageChannel();
  12. ok(a, "MessageChannel created");
  13. evt.ports[0].postMessage('hello world!', [a.port2]);
  14. a.port1.onmessage = function(evt) {
  15. evt.target.postMessage(evt.data);
  16. }
  17. }
  18. </script>
  19. </body>
  20. </html>