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数组长度问题代码说明
Jan 20 Javascript
详解JavaScript ES6中的模板字符串
Jul 28 Javascript
jQuery Timelinr实现垂直水平时间轴插件(附源码下载)
Feb 16 Javascript
JavaScript Date对象详解
Mar 01 Javascript
jQuery控制div实现随滚动条滚动效果
Jun 07 Javascript
js canvas实现擦除动画
Jul 16 Javascript
微信小程序  简单实例(阅读器)的实例开发
Sep 29 Javascript
全面总结Javascript对数组对象的各种操作
Jan 22 Javascript
JS运动特效之链式运动分析
Jan 24 Javascript
小程序scroll-view组件实现滚动的示例代码
Sep 20 Javascript
解决vue无法设置滚动位置的问题
Oct 07 Javascript
JS实现简易留言板特效
Dec 23 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中其实也可以用方法链
2011/11/10 PHP
ThinkPHP中的常用查询语言汇总
2014/08/22 PHP
PHP实现的购物车类实例
2015/06/17 PHP
php+ajax注册实时验证功能
2016/07/20 PHP
PHPUnit测试私有属性和方法功能示例
2018/06/12 PHP
Jquery 获取checkbox的checked问题
2011/11/16 Javascript
js控制input框只读实现示例
2014/01/20 Javascript
jQuery的animate函数学习记录
2014/08/08 Javascript
快速学习AngularJs HTTP响应拦截器
2015/12/31 Javascript
Bootstrap实现圆角、圆形头像和响应式图片
2016/12/14 Javascript
js实现文字跑马灯效果
2017/02/23 Javascript
Vue.js实现文章评论和回复评论功能
2020/05/30 Javascript
微信小程序多列选择器range-key使用详解
2020/03/30 Javascript
关于Angularjs中自定义指令一些有价值的细节和技巧小结
2018/04/22 Javascript
vue中使用codemirror的实例详解
2018/11/01 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
javascript中数组的常用算法深入分析
2019/03/12 Javascript
vue+php实现的微博留言功能示例
2019/03/16 Javascript
在Uni中使用Vue的EventBus总线机制操作
2020/07/31 Javascript
创建与框架无关的JavaScript插件
2020/12/01 Javascript
Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法
2015/03/05 Python
Python提取网页中超链接的方法
2016/09/18 Python
Python面向对象之继承代码详解
2018/01/29 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
一条命令解决mac版本python IDLE不能输入中文问题
2018/05/15 Python
Python实现的爬虫刷回复功能示例
2018/06/07 Python
详解Django-restframework 之频率源码分析
2019/02/27 Python
python装饰器相当于函数的调用方式
2019/12/27 Python
介绍一下Java的安全机制
2012/06/28 面试题
联想C++笔试题
2012/06/13 面试题
党干部专题民主生活会对照检查材料思想汇报
2014/10/06 职场文书
群众路线个人剖析材料及整改措施
2014/11/04 职场文书
公务员政审材料范文
2014/12/23 职场文书
MySQL 逻辑备份与恢复测试的相关总结
2021/05/14 MySQL
python中的sys模块和os模块
2022/03/20 Python
flex布局中使用flex-wrap实现换行的项目实践
2022/06/21 HTML / CSS