本文约定:
A页面:跳转前的原来页面,假设为http://a.com
B页面:将要跳转的目标页面,假设为http://b.com
一、简单方案
说到页面跳转,首先想到的就是用a标签:
// 在A页面点击链接,并将参数data传到B页面
// 在B页面接收A页面传过来的参数
var data = window.location.href.split("?")[1].split("=")[1];
还可以使用window.open方法跳转页面:
// A页面
window.open(“http://b.com?data=1”, “_blank”);
在B页面获取值同上
弊端:通过URL的方式传参是有字符限制的,只能传递较少的数据
二、传递长数据方案
想要传递大量数据就不能使用将数据放在URL中这种方式进行传递,这里我使用了HTML5中新引入的window.postMessage方法进行数据传递。
// A页面
var popup = window.open(“http://b.com”, ”_blank”);
if(popup){
setTimeout(function(){
var data = {data: 1};
popup.postMessage(JSON.stringify(data), “http://b.com”);</