是否可以存储使用window.open()
打开的窗口并从其他页面访问它?
以下是我打开窗户的方式:
win = window.open("jmap.php?id="+id);
当导航父页面时(访问网站的其他页面),我想调用先前打开的窗口的功能:
win.zoomToPlainte(id)
如何跨页面保存win
变量?
答案 0 :(得分:1)
只要两个窗口位于同一个域,就可以实现。
您需要保存对打开的窗口对象的引用,就像您正在使用的那样:
var win = window.open("jmap.php?id="+id);
Window对象具有document
属性,允许您像这样访问其DOM:
win.document.getElementById(...);
或者您可以使用窗口对象调用全局函数/变量:
win.someGlobalFunction();
要从子窗口返回打开它的窗口对象,请使用window.opener
属性,该属性返回一个窗口对象:
window.opener.document.getElementById(...);
window.opener.someGlobalFunction();