我有一个使用 Javascript 函数打开的窗口:
function newwindow()
{
window.open('link.html','','width=,height=,resizable=no');
}
我需要的是,一旦新窗口打开,焦点就会返回到原始窗口。我怎样才能做到这一点?我应该把代码放在哪里 - 在新窗口中还是在旧窗口中?谢谢!
我有一个使用 Javascript 函数打开的窗口:
function newwindow()
{
window.open('link.html','','width=,height=,resizable=no');
}
我需要的是,一旦新窗口打开,焦点就会返回到原始窗口。我怎样才能做到这一点?我应该把代码放在哪里 - 在新窗口中还是在旧窗口中?谢谢!
这被称为“弹出窗口”(并且通常不赞成......但我离题了......它应该给你很多关于谷歌的信息
您可能想要执行以下操作:
var popup = window.open(...);
popup.blur();
window.focus();
哪个应该将焦点设置回原始窗口(未经测试 - 从谷歌捏取)。某些浏览器可能会阻止此技术。
调用window.open后,您可以尝试使用
window.resizeTo(0,0);
window.moveTo(0,window.screen.availHeight+10);
这种方式不能真正在后台打开窗口,但以类似的方式工作。Chrome 工作正常,没有尝试其他浏览器。
如果Albert 的解决方案对您不起作用,并且您实际上希望窗口可见,但要在当前窗口后面打开,您可以尝试在打开窗口中打开一个新选项卡并立即关闭它,这将使焦点回到开门窗。
window.open('link.html','','width=,height=,resizable=no');
window.open().close();
但是,我相信第二个窗口是在选项卡中打开还是在新窗口中打开取决于您的浏览器设置。
请不要将“pop-unders”用于邪恶。
您可以使用“模糊”或“聚焦”来执行所需的操作。
“模糊”
function newwindow()
{
var myChild= window.open('link.html','','width=,height=,resizable=no');
myChild.blur();
}
“重点”
function newwindow()
{
window.open('link.html','','width=,height=,resizable=no');
window.focus();
}
将代码放在您的 parentWindow(即您现在所在的窗口)中
两者都会起作用。