php main 与 iframe 相互通讯类(js+php同域/跨域)


Posted in Javascript onSeptember 14, 2017

main 与 iframe 相互通讯类

之前写过一篇《iframe与主框架跨域相互访问方法》,介绍了main与iframe相互通讯的原理,不了解原理的可以先看看。

今天把main与iframe相互通讯的方法封装成类,主要有两个文件,

JS:FrameMessage.js 实现调用方法的接口,如跨域则创建临时iframe,调用同域执行者。
PHP:FrameMessage.class.php 实现接收到跨域请求时,根据参数返回执行方法的JS code。

功能如下:

1.支持同域与跨域通讯
2.传递的方法参数支持字符串,JSON,数组等。

php main 与 iframe 相互通讯类(js+php同域/跨域)

FrameMessage.exec('http://127.0.0.1/execB.php', 'myframe', 'fIframe', ['fdipzone', '{"gender":"male","age":"29"}', '["http://blog.csdn.net/fdipzone", "http://weibo.com/fdipzone"]']); 

php main 与 iframe 相互通讯类(js+php同域/跨域)

FrameMessage.exec('http://localhost/execA.php', '', 'fMain', ['programmer', '{"first":"PHP","second":"javascript"}', '["EEG","NMG"]']);

因部分浏览器不支持JSON.stringify 与JSON.parse 方法(如IE6/7),为了兼容,需要包含json2.js,下载地址:

Javascript 相关文章推荐
javascript Onunload与Onbeforeunload使用小结
Dec 31 Javascript
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
Apr 12 Javascript
60行js代码实现俄罗斯方块
Mar 31 Javascript
详解Bootstrap按钮
Jan 04 Javascript
vue学习笔记之指令v-text && v-html && v-bind详解
May 12 Javascript
Ionic项目中Native Camera的使用方法
Jun 07 Javascript
详解cordova打包成webapp的方法
Oct 18 Javascript
React Native中导航组件react-navigation跨tab路由处理详解
Oct 31 Javascript
layui获取选中行数据的实例讲解
Aug 19 Javascript
node错误处理与日志记录的实现
Dec 24 Javascript
用npm-run实现自动化任务的方法示例
Jan 14 Javascript
详解如何使用nvm管理Node.js多版本
May 06 Javascript
iframe与主框架跨域相互访问实现方法
Sep 14 #Javascript
VsCode插件整理(小结)
Sep 14 #Javascript
推荐VSCode 上特别好用的 Vue 插件之vetur
Sep 14 #Javascript
vue 计时器组件的实现代码
Sep 14 #Javascript
详解tween.js的使用教程
Sep 14 #Javascript
JS库之wow.js使用方法
Sep 14 #Javascript
JavaScript正则表达式和级联效果
Sep 14 #Javascript
You might like
PHP脚本的10个技巧(2)
2006/10/09 PHP
仿AS3实现PHP 事件机制实现代码
2011/01/27 PHP
php中动态调用函数的方法
2015/03/16 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
2016/03/25 PHP
自动生成文章摘要的代码[JavaScript 版本]
2007/03/20 Javascript
一个Action如何调用两个不同的方法
2014/05/22 Javascript
javascript下拉框选项单击事件的例子分享
2015/03/04 Javascript
js操作css属性实现div层展开关闭效果的方法
2015/05/11 Javascript
详解WordPress开发中get_current_screen()函数的使用
2016/01/11 Javascript
jquery插件之文字间歇自动向上滚动效果代码
2016/02/25 Javascript
JavaScript弹出对话框的三种方式
2016/03/23 Javascript
js获取客户端操作系统类型的方法【测试可用】
2016/05/27 Javascript
全面介绍javascript实用技巧及单竖杠
2016/07/18 Javascript
JavaScript获取当前时间向前推三个月的方法示例
2017/02/04 Javascript
JavaScript中双符号的运算详解
2017/03/12 Javascript
详解Vue SSR( Vue2 + Koa2 + Webpack4)配置指南
2018/11/13 Javascript
Node.js使用MongoDB的ObjectId作为查询条件的方法
2019/09/10 Javascript
Layui弹出层 加载 做编辑页面的方法
2019/09/16 Javascript
vue.js 实现a标签href里添加参数
2019/11/12 Javascript
vue中改变滚动条样式的方法
2020/03/03 Javascript
[01:02:45]完美世界DOTA2联赛 LBZS vs Forest 第三场 11.07
2020/11/09 DOTA
Python中的模块和包概念介绍
2015/04/13 Python
Python语言生成水仙花数代码示例
2017/12/18 Python
浅谈Pandas Series 和 Numpy array中的相同点
2019/06/28 Python
通过代码实例了解Python异常本质
2020/09/16 Python
python 制作网站小说下载器
2021/02/20 Python
Weekendesk意大利:探索多种引人入胜的周末主题
2016/10/14 全球购物
delegate与普通函数的区别
2014/01/22 面试题
Python是如何进行类型转换的
2013/06/09 面试题
终端业务员岗位职责
2013/11/27 职场文书
创建服务型党组织实施方案
2014/02/25 职场文书
2014年电厂个人工作总结
2014/11/27 职场文书
求职信:会计求职的写作技巧
2019/04/24 职场文书
2019交通安全宣传标语集锦!
2019/06/28 职场文书
通过Python把学姐照片做成拼图游戏
2022/02/15 Python
OpenCV实现常见的四种图像几何变换
2022/04/01 Python