iframe跨域通信

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chen_jia_hao/article/details/83310731

简述:

window.postMessage方法,允许跨窗口通信,不论这两个窗口是否同源。
窗口都可以通过message事件,监听对方的消息。

语法:
otherWindow.postMessage(message, targetOrigin, [transfer]);

message:发送的内容。

targetOrgin:目标地址。

举例:
父窗口http://www.test1.com向子窗口http://www.test2.com发消息,
调用postMessage方法,写法如下:

//父窗口发送
var children = window.open('http://www.test1.com', '子窗口');
children.postMessage('我是父窗口', 'http://www.test2.com');

//子窗口监听
window.addEventListener('message',function(e){
    console.log(e);
    if(e.origin !== 'http://www.test2.com') return;
},false);

猜你喜欢

转载自blog.csdn.net/chen_jia_hao/article/details/83310731