我有一个名为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>
答案 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)
在现代浏览器中,似乎无法聚焦原始窗口。