在跨域和jsonp的文章里面已经介绍了跨域的基本概念,也介绍了jsonp跨域的原理(script标签+服务器和客户端约定好callback)基本写法和jquer封装;本文介绍window.postMessage()的h5接口实现不同窗口不同页面的跨域通信;
- 可以发送数据
- 可以通过发送特定的事件名称,在onMessage里面执行回调,类似于angular的emit和on的关系然后操作dom
postMessage()
1 | someWindow.postMessage(data,origin); |
MessageEvent的属性
1 | someWindow.addEventListener('message',function(e){ |
示例说明
1 | # iframe里面嵌入的儿子页面 |
1 | # 爸爸页面 |