我有链接打开一个窗口,window.open("mytest.aspx");
我遇到的问题是,当他们关闭弹出窗口时,我需要在父页面上隐藏该链接。所以基本上,如何从使用window.open()打开的弹出窗口隐藏父页面上的链接(这是一个锚点)?
谢谢
答案 0 :(得分:2)
试试这个,链接的JavaScript代码onclick事件:
function OpenPopup()
{
document.getElementById("linkID").style.visibility='hidden';
window.open("mytest.aspx");
}
答案 1 :(得分:0)
我想念这个问题。你可以这样做:
function Popup(){
parentWindow = this;
window.open('mytest.aspx');
}
在父窗口中有另一个功能:
function hideLink(){
$("#linkID").hide()
}
然后在弹出窗口之前调用以下函数:
parentWindow.hideLink();
我为之前的回答道歉。
答案 2 :(得分:0)
我想你可能想看看这篇类似的帖子 - The proper way to handle popup closing
OP和接受的答案使用setInterval
来轮询弹出窗口。关闭后,执行您的隐藏锚点#39;逻辑。
希望这有帮助!
答案 3 :(得分:0)
您可以尝试使用onunload事件在窗口关闭时隐藏链接,'hr1'是开启者页面上的链接ID:
在弹出页面上
function CloseOpener(){
window.opener.document.getElementById('hr1').style.display='none';
}
然后在同一个弹出页面上:
<body onunload="CloseOpener();"> </body>
或者在同一页面上使用单独的按钮来触发关闭:
<input id="Button1" type="button" value="button" onclick="CloseOpener();"/>
我已经对此进行了测试,它可以在我安装的浏览器上运行,但在使用此事件时仍需要考虑一些因素,您可以在此处了解相关信息:onunload not working in Chrome and safari
答案 4 :(得分:0)
您可以尝试这样的事情:
var popup = window.open('mytest.aspx');
popup.onbeforeunload = function(){
document.getElementById("theLink").style.visibility='hidden';
}
请注意,这假设弹出页面与父页面位于同一个域中。