分享

HTML5 postMessage

 张岩峰 2011-09-05
在HTML5中新增了postMessage方法,postMessage可以实现跨文档消息传输(Cross Document Messaging),Internet Explorer 8, Firefox 3, Opera 9, Chrome 3和 Safari 4都支持postMessage。

  可以通过绑定window的message事件来监听发送跨文档消息传输内容。示例代码如下:

eg.) parent page

Html代码 复制代码 收藏代码
  1. <span style="font-size: small;"><!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <title>Communication</title>
  5. <script>
  6. var messageChange = function(e) {
  7. var data = e.data;
  8. var origin = e.origin;
  9. if (origin !== "http://www.") return;
  10. document.getElementById('display').innerHTML = data;
  11. };
  12. if (typeof window.addEventListener != 'undefined') {
  13. window.addEventListener('message', messageChange, false);
  14. } else if (typeof window.attachEvent != 'undefined') {
  15. window.attachEvent('onmessage', messageChange);
  16. }
  17. </script>
  18. </head>
  19. <body>
  20. <div id="display">Say something!</div>
  21. <iframe scrolling="no" frameborder="0" width="0" height="0" src="http://www./html5/postMessage/sub.html"></iframe>
  22. </body>
  23. </html>
  24. </span>
  25. <span style="font-size: small;">
  26. </span>

eg.) sob page

Html代码 复制代码 收藏代码
  1. <span style="font-size: small;"><!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <title>Communication</title>
  5. <script>
  6. setInterval(function(){
  7. window.parent.postMessage("hello world!", "http://www.");
  8. },1000);
  9. </script>
  10. </head>
  11. <body></body>
  12. </html></span>
  13. <span style="font-size: small;">
  14. </span>



DEMO见附件, 更多HTML5相关demo地址:http:///

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多