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设置IFrame高度自适应(兼容各主流浏览器)
Jun 05 Javascript
解析offsetHeight,clientHeight,scrollHeight之间的区别
Nov 20 Javascript
JavaScript删除数组元素的方法
Mar 20 Javascript
AngularJS中$watch和$timeout的使用示例
Sep 20 Javascript
JS实现的二叉树算法完整实例
Apr 06 Javascript
ES6入门教程之Class和Module详解
May 17 Javascript
JsChart组件使用详解
Mar 04 Javascript
Vue $mount实战之实现消息弹窗组件
Apr 22 Javascript
Vue 使用beforeEach实现登录状态检查功能
Oct 31 Javascript
JS实现简单的表格增删
Jan 16 Javascript
Typescript3.9 常用新特性一览(推荐)
May 14 Javascript
OpenLayers3加载常用控件使用方法详解
Sep 25 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 全局变量范围分析
2009/08/07 PHP
深入探讨:PHP使用数据库永久连接方式操作MySQL的是与非
2013/06/05 PHP
php跨服务器访问方法小结
2015/05/12 PHP
php判断对象是派生自哪个类的方法
2015/06/20 PHP
用AJAX返回HTML片段中的JavaScript脚本
2010/01/04 Javascript
jquery json 实例代码
2010/12/02 Javascript
深入理解JavaScript系列(17):面向对象编程之概论详细介绍
2015/03/04 Javascript
简介JavaScript中Boolean.toSource()方法的使用
2015/06/05 Javascript
使用jQuery UI库开发Web界面的简单入门指引
2016/04/22 Javascript
js获取页面引用的css样式表中的属性值方法(推荐)
2016/08/19 Javascript
JS实现的点击表头排序功能示例
2017/03/27 Javascript
angularjs下拉框空白的解决办法
2017/06/20 Javascript
Three.js实现绘制字体模型示例代码
2017/09/26 Javascript
element-ui 中的table的列隐藏问题解决
2018/08/24 Javascript
layui实现文件或图片上传记录
2018/08/28 Javascript
vue实现手机号码的校验实例代码(防抖函数的应用场景)
2019/09/05 Javascript
nuxt框架中对vuex进行模块化设置的实现方法
2019/09/06 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
Echarts实现单条折线可拖拽效果
2019/12/19 Javascript
Django添加sitemap的方法示例
2018/08/06 Python
python 解压pkl文件的方法
2018/10/25 Python
Tensorflow中tf.ConfigProto()的用法详解
2020/02/06 Python
Python 如何批量更新已安装的库
2020/05/26 Python
Django 实现图片上传和下载功能
2020/12/31 Python
使用HTML5和CSS3表单验证功能
2017/05/05 HTML / CSS
AmazeUI的下载配置与Helloworld的实现
2020/08/19 HTML / CSS
DIY手工制作经营店创业计划书
2014/02/01 职场文书
我的祖国演讲稿
2014/05/04 职场文书
竞聘演讲稿精彩开头和结尾
2014/05/14 职场文书
乡镇创先争优活动总结
2014/08/28 职场文书
新婚姻法离婚协议书范文
2014/11/30 职场文书
在校学生证明格式
2015/06/24 职场文书
小学生读书笔记
2015/07/01 职场文书
2016婚礼主持词开场白
2015/11/24 职场文书
python正则表达式re.search()的基本使用教程
2021/05/21 Python
python调用ffmpeg命令行工具便捷操作视频示例实现过程
2021/11/01 Python