针对这个问题我只能说说自己的理解了,肯定会有遗漏,毕竟我前端也不怎么会,有其他方法的朋友可以指出来,这样我也好再学习一下。

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或者通过借助中转服务器,那么两者之间的数据是无法正常交互的。

上面都是我的理解。欢迎讨论。

面试题 - 两个页面间如何传递数据相关推荐

  1. Servlet页面间对象传递的方法

    Servlet页面间对象传递的方法 1.request 2.session 3.application 4.cookie 5.其它的

  2. 在两个页面间翻转设置Animation动作的一些总结

    今天碰到两个页面之间翻转的动作设计问题,发现了一些问题,故做个总结,很多都写在注释部分: 1.首先,我们来手动创建两个view以及相应的viewController.是手动,不是用IB (1)刚开始只 ...

  3. uniapp不同页面跳转传递数据

    上周工作中遇到的坑,打算这周复盘一下,记录下来,防止忘记. 1.App页面的原型大致如下 其实也还算简单,就几个表单项,重点是底下的几个输入框的数据,不是在本页面直接输入,而是由另一个表单页传过来的数 ...

  4. 6.Android的学习(Intent跳转页面,活动之间传递数据)

    Intent跳转页面 (1)使用显示Intent,首先创建一个空的活动,并且有布局,在onClick()下面添加: Intent里面的第一个参数是当前活动页面,第二参数是要跳转的活动页面.这段代码在当 ...

  5. 两个Fragment之间如何传递数据

    FragmentA启动FragmentB,做一些选择操作后,返回FragmentA,需要把FragmentB里面选择的数据传回来.有什么办法? Fragment之间不能直接通信,必须通过Activit ...

  6. java 两个页面传递数据,请问Cookie怎么在两个页面间传递数据?

    参考代码如下: //如果请求的Cookie对象为空 if (Request.Cookies["userCookie"] == null) { //创建一个Cookie对象 Http ...

  7. jquery mobile 页面间的传递参数

    jq mobile作为一个web开发手机app的框架,打包后的apk,其实就是在手机上模拟一个简易的浏览器,然后进行js操作,在没有服务器端脚本语言的支持下,如何传递参数呢? 很明显,这就要依靠jqu ...

  8. 页面间参数值传递含“%”的处理方法

    1.dg.aspx?condition=Server.UrlEncode("%sdfasdf%") 2.做两次替换试试.传的时候先替换成一个特别的字符串 转载于:https://w ...

  9. vue组件间通信传递数据的四种方式(路由传参、父子组件传参、兄弟组件传参、深层次传参)

    前言: vue组件间通信对于经常来写vue的伙伴来说应该是很轻松的,对于一些刚入门的伙伴来说可能就有些迷茫,感觉方式有很多种,但是总结起来又不知道应该怎么说,在下面的文章中,我结合自己的开发过程中经常 ...

最新文章

  1. TCPDF中文生僻字解决方案
  2. 666!让移动端也用上3D·VR特效
  3. Spring基础篇——Spring容器和应用上下文理解
  4. C#下的Web应用程序设计过程
  5. 【算法竞赛学习】二手车交易价格预测-Task2数据分析
  6. extjs 前端js代码调用后台函数方法
  7. 信息学奥赛一本通 1180 | 1946:【09NOIP普及组】分数线划定 | OpenJudge NOI 1.10 05 | 洛谷 P1068 [NOIP2009 普及组] 分数线划定
  8. webapp,ios Safari打开新窗口
  9. opencv学习笔记2:图像滤波
  10. 用冰封服务器安装系统,冰封一键重装系统怎么使用 冰封一键重装系统使用教程...
  11. python实现规则引擎_规则引擎python
  12. 6. Excel 图表制作
  13. 输入身高体重测身材_身高体重测试(女人标准体重计算器)
  14. 罗永浩又双叒叕diss苹果了
  15. 机器学习笔记(杂) oecd_bli_2015.csv TOT
  16. Debezium系列之:安装部署debezium2.0以上版本的详细步骤
  17. 社区发现算法FastUnfolding的GraphX实现(转载)
  18. 关于win7利用vs2010 MFC平台开发的软件在win10系统的电脑下无法运行的问题。
  19. 淘宝技术发展[转载]
  20. 1024•假如程序员心想事成

热门文章

  1. 【常见Web应用安全问题】
  2. java中堆栈(stack)和堆(heap)
  3. ORACLE 执行计划分析
  4. 鲁迅散文——狗的驳诘
  5. Linux从入门到精通——磁盘与目录的容量(du、df)
  6. Java学习笔记53(网络编程:TCP协议案例)
  7. java操作Excel之POI(3)
  8. two or more web modules defined in the configuration have the same context root
  9. WMI介绍及简单实际运用(二,Win32_Processor内容)
  10. 转:MySQL史上最全性能优化方式