iframe与宿主页面的通信问题

你说的曾经没有我的故事 提交于 2020-01-29 06:58:33

1. 利用 sessionStorage 进行相对安全的通信(localStorage)

保存数据语法:

sessionStorage.setItem("key", "value");

读取数据语法:

var lastname = sessionStorage.getItem("key");

删除指定键的数据语法:

sessionStorage.removeItem("key");

删除所有数据:

sessionStorage.clear();

2. postMessage

子向父通信


// iframe 页面 发消息
window.parent.postMessage({
         msg:"xxx"
},'*');
// 父页面 收消息
window.addEventListener('message',function(res){
        console.log(res.data.msg);
});

父向子通信

// 父页面 发消息
var myframe = document.getElementById('myframe'); //获取iframe
myframe.contentWindow.postMessage({data:'parent'},childDomain); //childDomain是子页面的源(协议+主机+端口号)
// iframe 页面 收消息
window.addEventListener('message', function(e){
      console.log(e.data.data);
})

参考链接:

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!