假设父窗口有abc.xyz.com网址,我正在使用以下窗口打开子窗口:window.top.open
我使用window.opener在子窗口中获取父窗口对象,并使用window.opener.location.href轮询父窗口URL。
现在,如果用户单击父窗口中的链接,导航到def.xyz.com,则window.opener.location.href将提供“Permission Denied”,window.opener.closed将返回true。 (在儿童剧本中)
如果父窗口不在xyz.com内,我需要更改子窗口
我如何知道父母已导航到xyz.com或其他某个域?
答案 0 :(得分:0)
您可以在父窗口中添加一些javascript,以便在URL更改时修改子项。使用window.onunload
事件可以完成工作:
window.onunload=function(){
childWindow.location.href = 'parentURLChanged.html';
};
您不必完全更改位置,也只能向网址添加hash
,以便从 child.html 更改为 child.html#parentHasChanged 。
如果您希望在这两个窗口之间进行更完整的通信,我建议您使用jQuery postMessage Plugin。它允许您在两个Windows或框架之间发送和接收消息,并且还可以跨域。
答案 1 :(得分:0)