1

我有两个页面,页面“a”和页面“b”。

Page'a" 生成一个js弹窗

function loadWindow(){
var params = 'status = 0, height = 300, width = 480, resizable = 0';
if(isTouchDevice()){
    params = ''
}
w = window.open('/audio/audioplayer.php?id='+audioId, 'audioplayer', params);
w.document.close();
}

然后访问者转到页面 b(弹出窗口仍然打开)。我想要页面 b 上的按钮,当按下它时,它会将焦点带到在页面 a 上创建的弹出窗口。

我已经尝试寻找答案,但没有任何效果。我知道我可以把注意力集中在

window.open('', 'audioplayer', ''); 

或者

w.focus();

但问题是我不知道如何从页面“a”引用弹出窗口

4

1 回答 1

0

您无法访问另一个窗口,因为当您转到页面 b 时,您的参考资料会消失。大多数浏览器不允许这样做 - 出于安全原因。如果这是可能的,任何页面都可以访问您的所有浏览器选项卡。

你可以测试一下。通过打开弹出窗口,然后在其中执行 window.opener。这将返回页面 a。但是当您从页面 a 浏览到页面 b 时。弹出窗口的 opener 属性将为空。

一种解决方法是将页面 b 动态加载到页面 a 中。这样窗口和参考将被保留。

于 2013-04-05T17:09:32.393 回答