面试题 - 两个页面间如何传递数据
针对这个问题我只能说说自己的理解了,肯定会有遗漏,毕竟我前端也不怎么会,有其他方法的朋友可以指出来,这样我也好再学习一下。
1 如果页面A和页面B是同域的情况
如果是同域那么两者之间可以直接通过客户端存储来交换数据的,客户端存储的方式可以看我前面一篇文章。在同域的假设条件下,如果页面A和B还是嵌套关系的话,那么可以直接使用脚本读取对方的数据,更快捷了。
2 如果页面A和页面B不同域的情况
页面A通过点击链接跳转到页面B的话,那么数据可以通过search和hash附加在B页面的URL上,传递给页面B。再如果页面A跳转到页面B的时候target=_self,也就是说它们在同一个浏览器窗口先后运行的,那么window对象它们是共享的,因此我们可以通过window.xx来传递数据,比如window.name=123;
3 如果页面A和B,不同域,也没有跳转关系
如果浏览器支持HTML5的话,我们可以使用window.postMessage来跨域发送数据。
参考链接:
http://davidwalsh.name/window-postmessage
http://blog.teamtreehouse.com/cross-domain-messaging-with-postmessage
剩下的,除非使用第三方的插件,比如flash,activex或者通过借助中转服务器,那么两者之间的数据是无法正常交互的。
上面都是我的理解。欢迎讨论。
面试题 - 两个页面间如何传递数据相关推荐
- Servlet页面间对象传递的方法
Servlet页面间对象传递的方法 1.request 2.session 3.application 4.cookie 5.其它的
- 在两个页面间翻转设置Animation动作的一些总结
今天碰到两个页面之间翻转的动作设计问题,发现了一些问题,故做个总结,很多都写在注释部分: 1.首先,我们来手动创建两个view以及相应的viewController.是手动,不是用IB (1)刚开始只 ...
- uniapp不同页面跳转传递数据
上周工作中遇到的坑,打算这周复盘一下,记录下来,防止忘记. 1.App页面的原型大致如下 其实也还算简单,就几个表单项,重点是底下的几个输入框的数据,不是在本页面直接输入,而是由另一个表单页传过来的数 ...
- 6.Android的学习(Intent跳转页面,活动之间传递数据)
Intent跳转页面 (1)使用显示Intent,首先创建一个空的活动,并且有布局,在onClick()下面添加: Intent里面的第一个参数是当前活动页面,第二参数是要跳转的活动页面.这段代码在当 ...
- 两个Fragment之间如何传递数据
FragmentA启动FragmentB,做一些选择操作后,返回FragmentA,需要把FragmentB里面选择的数据传回来.有什么办法? Fragment之间不能直接通信,必须通过Activit ...
- java 两个页面传递数据,请问Cookie怎么在两个页面间传递数据?
参考代码如下: //如果请求的Cookie对象为空 if (Request.Cookies["userCookie"] == null) { //创建一个Cookie对象 Http ...
- jquery mobile 页面间的传递参数
jq mobile作为一个web开发手机app的框架,打包后的apk,其实就是在手机上模拟一个简易的浏览器,然后进行js操作,在没有服务器端脚本语言的支持下,如何传递参数呢? 很明显,这就要依靠jqu ...
- 页面间参数值传递含“%”的处理方法
1.dg.aspx?condition=Server.UrlEncode("%sdfasdf%") 2.做两次替换试试.传的时候先替换成一个特别的字符串 转载于:https://w ...
- vue组件间通信传递数据的四种方式(路由传参、父子组件传参、兄弟组件传参、深层次传参)
前言: vue组件间通信对于经常来写vue的伙伴来说应该是很轻松的,对于一些刚入门的伙伴来说可能就有些迷茫,感觉方式有很多种,但是总结起来又不知道应该怎么说,在下面的文章中,我结合自己的开发过程中经常 ...
最新文章
- TCPDF中文生僻字解决方案
- 666!让移动端也用上3D·VR特效
- Spring基础篇——Spring容器和应用上下文理解
- C#下的Web应用程序设计过程
- 【算法竞赛学习】二手车交易价格预测-Task2数据分析
- extjs 前端js代码调用后台函数方法
- 信息学奥赛一本通 1180 | 1946:【09NOIP普及组】分数线划定 | OpenJudge NOI 1.10 05 | 洛谷 P1068 [NOIP2009 普及组] 分数线划定
- webapp,ios Safari打开新窗口
- opencv学习笔记2:图像滤波
- 用冰封服务器安装系统,冰封一键重装系统怎么使用 冰封一键重装系统使用教程...
- python实现规则引擎_规则引擎python
- 6. Excel 图表制作
- 输入身高体重测身材_身高体重测试(女人标准体重计算器)
- 罗永浩又双叒叕diss苹果了
- 机器学习笔记(杂) oecd_bli_2015.csv TOT
- Debezium系列之:安装部署debezium2.0以上版本的详细步骤
- 社区发现算法FastUnfolding的GraphX实现(转载)
- 关于win7利用vs2010 MFC平台开发的软件在win10系统的电脑下无法运行的问题。
- 淘宝技术发展[转载]
- 1024•假如程序员心想事成