弹出窗口设置焦点

时间:2012-07-09 14:35:12

标签: javascript function popup window

我有一个名为myWindow的弹出窗口,当它弹出时,我希望焦点位于原始窗口,而不是弹出窗口。我拿出了myWindow.focus();行,它仍然专注于弹出窗口。创建弹出窗口时有没有人知道如何将注意力集中在原始窗口上?长寿和繁荣。

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function openWin()
{
myWindow=window.open('','','width=200,height=100');
myWindow.document.write("<p>This is 'myWindow'</p>");
myWindow.focus();
}
</script>
</head>
<body>

<input type="button" value="Open window" onclick="openWin()" />

</body>
</html>

4 个答案:

答案 0 :(得分:4)

致电window.focus()而非myWindow.focus()


如果这不起作用,请尝试模糊窗口然后重新聚焦:

window.blur();
window.focus();

答案 1 :(得分:3)

打开弹出窗口后,只需在函数中或之后立即调用window.focus()

<input type="button" value="Open window" onclick="openWin(); window.focus();" />

function openWin()
{
myWindow=window.open('','','width=200,height=100');
myWindow.document.write("<p>This is 'myWindow'</p>");
window.focus();
}

答案 2 :(得分:1)

我遇到了同样的问题。我找到了解决方法。

我这样修改过:

myWindow.document.write("<p>This is 'myWindow'</p>");
myWindow.document.write("<script>window.opener.focus();</script>");

它适用于FF和Chrome。

答案 3 :(得分:0)

在现代浏览器中,似乎无法聚焦原始窗口。