iframe和父页面相互传值,并兼容跨域问题.(项目实测成功) from accessing a cross-origin frame
发布日期:2021-07-27 05:11:49
浏览次数:6
分类:技术文章
本文共 652 字,大约阅读时间需要 2 分钟。
项目背景:
部署本地服务器项目,后台管理系统内需要用iframe嵌入另一个功能项目,需要能够互相传值进行操作
问题:
翻译之后是跨域了,因为浏览器的同源策略问题
解决方法:
1:父页面向子iframe传值
(在父页面的js里获取到iframe,然后向iframe传值,然后这么写就行了,第一个参数是需要传的数据,也可以是对象)
var frame = document.getElementsByClassName('interfaceEditor')[0]; frame.contentWindow. postMessage ("数据", '*');
(在子iframe的js里监听获取父页面传的值)
window. addEventListener ('message', function(event) { //event.data获取传过来的数据 console.log(event.data)});
2:子iframe向父页面传值
(在子iframe里面这么写. data是数据, 第二参数是你父页面的地址)
window.parent.postMessage(data,'http://localhost:8080/');
(在父页面这么写,e.data就是子页面传的数据.)
window.addEventListener('message',function(e){ var Date=e.data; console.log(Date)},false);
项目实测成功
转载地址:https://blog.csdn.net/qq_45533841/article/details/105489582 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2024年09月15日 04时01分25秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
tensorflow:激活函数(Activation Function)
2019-05-27
tensorflow:批标准化(Bacth Normalization,BN)
2019-05-27
池化函数(Pooling Function)
2019-05-27
统计学习:正则化与交叉验证
2019-05-27
图形数据库的优势是什么,以Neo4j为例子
2019-05-27
Neo4j数据库基础
2019-05-27
机器学习中的各种距离
2019-05-27
xgboost原理及应用
2019-05-27
ipython开发工具Jupyter Notebook安装
2019-05-27
ubuntu下neo4j的安装
2019-05-27
Neo4j启动失败Max 1024 open files allowed, minimum of 40000 recommended. See the Neo4j manual.
2019-05-27
统计学习方法----统计学习知识综述
2019-05-27
统计学习方法---感知机算法实现代码
2019-05-27
统计学习知识---感知机学习算法的拓展(非线性可分数据问题)
2019-05-27
统计学习方法---感知机算法拓展(神经网络)
2019-05-27
统计学习方法---KNN(K近邻)
2019-05-27
统计学习方法---k近邻法
2019-05-27
统计学习方法---
2019-05-27