HTML5是个好东西,很多在之前的HTML里面没办法实现或者需要很多步骤才能实现的功能,在HTML5里面可以很容易的实现出来,比如跨域通信的问题,在HTML里面通过iframe嵌入的外部网页,如果要和他进行通信,我们在HTML5里面通过他提供的消息机制进行通信,比如我们在index.html里面写这样一段javascript代码:
iframe.postMessage("hello","www.iframePage.com/test");
这段语句的意思是给iframe嵌入的页面发起一个消息,第一个参数是发起的消息,第二个参数是可以获取消息的页面,2个参数都是必须的,不然javascript会抛出错误提示
然后我们可以iframe嵌入的那个页面里面写这么一段代码来监听到该message信息
window.addEventListener("message",function(ev) {
alert("从"+ev.origin+"那里传递过来的信息是"+ ev.data);
},false);
通过这种方式,就可以实现HTML5的跨域通信了