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 相关文章推荐
Google Suggest ;-) 基于js的动态下拉菜单
Oct 11 Javascript
Jquery颜色选择器ColorPicker实现代码
Nov 14 Javascript
js判断undefined类型示例代码
Feb 10 Javascript
jquery清空表单数据示例分享
Feb 13 Javascript
JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码
Sep 15 Javascript
JavaScript实现三级联动菜单实例代码
Jun 26 Javascript
Textarea输入字数限制实例(兼容iOS&安卓)
Jul 06 Javascript
Vue.js上下滚动加载组件的实例代码
Jul 17 Javascript
JS沙箱模式实例分析
Sep 04 Javascript
在Vue.js中使用Mixins的方法
Sep 12 Javascript
vuejs选中当前样式active的实例
Aug 22 Javascript
javascript实现贪吃蛇小练习
Jul 05 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
DSP接收机前端设想
2021/03/02 无线电
PHP实现的封装验证码类详解
2013/06/18 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
2014/06/23 PHP
windows的文件系统机制引发的PHP路径爆破问题分析
2014/07/28 PHP
PHP缓存工具XCache安装与使用方法详解
2018/04/09 PHP
PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例
2019/03/01 PHP
页面回到顶部的三种实现(锚标记,js)
2012/10/01 Javascript
js获取TreeView控件选中节点的Text和Value值的方法
2012/11/24 Javascript
jquery图片不完全按比例自动缩小的简单代码
2013/07/29 Javascript
轻松创建nodejs服务器(10):处理上传图片
2014/12/18 NodeJs
Javascript简单改变表单元素背景的方法
2015/07/15 Javascript
JavaScript数组方法大全(推荐)
2016/07/05 Javascript
基于KO+BootStrap+MVC实现的分页控件代码分享
2016/11/07 Javascript
Electron-vue脚手架改造vue项目的方法
2018/10/22 Javascript
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
Python使用迭代器打印螺旋矩阵的思路及代码示例
2016/07/02 Python
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
2017/08/31 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
python实现将一维列表转换为多维列表(numpy+reshape)
2019/11/29 Python
Python实现多线程下载脚本的示例代码
2020/04/03 Python
Python random模块的使用示例
2020/10/10 Python
纯CSS3打造动感漂亮时尚的扇形菜单
2014/03/18 HTML / CSS
HTML5进度条特效
2014/12/18 HTML / CSS
基于zepto的插件之移动端无缝向上滚动并上下触摸滑动实例代码
2016/12/20 HTML / CSS
Currentbody西班牙:美容仪专家
2019/09/28 全球购物
JBL加拿大官方商店:扬声器、耳机等
2020/10/23 全球购物
27个经典Linux面试题及答案,你知道几个?
2014/03/11 面试题
测绘工程系学生的自我评价
2013/11/30 职场文书
给同事的道歉信
2014/01/11 职场文书
运动会入场解说词
2014/02/07 职场文书
公司联欢会策划方案
2014/05/19 职场文书
客房部经理岗位职责
2015/02/02 职场文书
活动新闻稿范文
2015/07/17 职场文书
2016幼儿园毕业感言
2015/12/08 职场文书
总结Python常用的魔法方法
2021/05/25 Python
详解CSS中postion和opacity及cursor的特性
2022/08/14 HTML / CSS