我的网站上有一个链接,可以打开一个新窗口,转到播放很长音频文件的页面。我当前的脚本可以正常打开页面,并且如果多次单击链接则不会刷新。但是,当我移至网站上的单独页面并再次单击此链接时,它会重新加载。我知道当父元素更改时,我将丢失变量,因此我需要打开窗口,覆盖现有内容。我正在尝试围绕这个问题找到解决方案。我不想使用 cookie 来实现此目的,但如果需要的话我会这样做。
我的脚本如下:
function OpenWindow(){
if(typeof(winRef) == 'undefined' || winRef.closed){
//create new
winRef = window.open('http://samplesite/page','winPop','sampleListOfOptions');
} else {
//give it focus (in case it got burried)
winRef.focus();
}
}
你应该先打电话winRef = window.open("", "winPopup")
没有 URL - 这将返回一个窗口(如果存在),而无需重新加载。并且只有当winRef
is null
或空窗口,然后创建新窗口。
这是我的测试代码:
var winRef;
function OpenWindow()
{
if(typeof(winRef) == 'undefined' || winRef.closed)
{
//create new
var url = 'http://someurl';
winRef = window.open('', 'winPop', 'sampleListOfOptions');
if(winRef == null || winRef.document.location.href != url)
{
winRef = window.open(url, 'winPop');
}
}
else
{
//give it focus (in case it got burried)
winRef.focus();
}
}
有用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)