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 相关文章推荐
使用CSS和jQuery模拟select并附提交后取得数据的代码
Oct 18 Javascript
基于jquery实现简单的分页控件
Mar 17 Javascript
AngularJS 如何在控制台进行错误调试
Jun 07 Javascript
Bootstrap中的fileinput 多图片上传及编辑功能
Sep 05 Javascript
微信小程序 中wx.chooseAddress(OBJECT)实例详解
Mar 31 Javascript
js时间戳与日期格式之间转换详解
Dec 11 Javascript
(模仿京东用户注册)用JQuery实现简单表单验证,初学者必看
Jan 08 jQuery
JS中‘hello’与new String(‘hello’)引出的问题详解
Aug 14 Javascript
js canvas实现画图、滤镜效果
Nov 27 Javascript
JQuery的加载和选择器用法简单示例
May 13 jQuery
三步实现ionic3点击退出app程序
Sep 17 Javascript
NestJs使用Mongoose对MongoDB操作的方法
Feb 22 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
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
2014/10/21 PHP
jQuery基本选择器选择元素使用介绍
2013/04/18 Javascript
javascript使用onclick事件改变选中行的颜色
2013/12/30 Javascript
js实现键盘操作实现div的移动或改变的原理及代码
2014/06/23 Javascript
javascript字符串循环匹配实例分析
2015/07/17 Javascript
基于Css3和JQuery实现打字机效果
2015/08/11 Javascript
jQuery事件绑定用法详解(附bind和live的区别)
2016/01/19 Javascript
浅析JSONP技术原理及实现
2016/06/08 Javascript
简单谈谈关于 npm 5.0 的新坑
2017/06/08 Javascript
Angular自定义组件实现数据双向数据绑定的实例
2017/12/11 Javascript
jQuery第一次运行页面默认触发点击事件的实例
2018/01/10 jQuery
Vue监听页面刷新和关闭功能
2019/06/20 Javascript
基于jQuery的时间戳与日期间的转化
2019/06/21 jQuery
简单了解vue中的v-if和v-show的区别
2019/10/08 Javascript
Js视频播放器插件Video.js使用方法详解
2020/02/04 Javascript
JS实现随机点名器
2020/04/12 Javascript
[00:42]《辉夜杯》—职业组预选赛12月3日15点 正式打响
2015/12/03 DOTA
Python之PyUnit单元测试实例
2014/10/11 Python
python常见的格式化输出小结
2016/12/15 Python
Django中cookie的基本使用方法示例
2018/02/03 Python
在python中用print()输出多个格式化参数的方法
2019/07/16 Python
python字符串反转的四种方法详解
2019/12/02 Python
使用keras实现孪生网络中的权值共享教程
2020/06/11 Python
Python手动或自动协程操作方法解析
2020/06/22 Python
Python使用tkinter实现摇骰子小游戏功能的代码
2020/07/02 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
python 实现批量图片识别并翻译
2020/11/02 Python
上海世博会志愿者口号
2014/06/17 职场文书
护士旷工检讨书
2015/08/15 职场文书
2016护理专业求职自荐书
2016/01/28 职场文书
pdf论文中python画的图Type 3 fonts字体不兼容的解决方案
2021/04/24 Python
MySQL 那些常见的错误设计规范,你都知道吗
2021/07/16 MySQL
MIME类型中application/xml与text/xml的区别介绍
2022/01/18 HTML / CSS
mysql insert 存在即不插入语法说明
2022/03/25 MySQL
Win11电源已接通但未充电怎么办?Win11电源已接通未充电的解决方法
2022/04/05 数码科技
JavaScript实现音乐播放器
2022/08/14 Javascript