【发布时间】:2020-07-16 11:27:34
【问题描述】:
我需要将一些 JavaScript 对象传递给打开的新窗口。当我在新标签页中打开页面时,下面的代码可以正常工作。
var url = "http://page1.html";
var win = window.open(url, "_blank");
win.myData = myData;
win.focus();
我可以使用
访问 page1.html 上的数据 var data = window.opener.myData;
但是如果在同一个标签页中使用
var win = window.open(url, "_self");
此方法无效。我在第二页收到TypeError: Cannot read property 'myData' of null。
如何在同一标签中打开新页面时传递数据。
【问题讨论】:
-
您将不得不使用
localStorage之类的东西来做到这一点。 -
试试
window.self.myData -
这能回答你的问题吗? Javascript: sharing data between tabs
-
谢谢,我会检查的。
-
你可以使用localStorage(如上所述)、cookies、查询字符串。看这个问题,有很多解释:stackoverflow.com/questions/29986657/…
标签: javascript html