使用链接设置窗口焦点

Set Window focus with a link

本文关键字:窗口 焦点 设置 链接      更新时间:2023-09-26

我在 Javascript 窗口焦点设置方面有问题。我编写了一个函数来使用 JS 方法 window.open() 打开一个新窗口并将返回值保存到变量中。现在我在第一页上有一个链接,通过单击此链接,第二个链接打开 window.open(),窗口应该得到焦点。但这行不通。有什么办法可以让它工作吗?

我的代码如下所示:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<script type="text/javascript" language="JavaScript">
var myWindow;
function checkForRefresh() {
                myWindow = window.open("test.html", "TestMain");
                myWindow.focus();
}
function switchFocus(umsWindow) {
                myWindow.focus();
}
</script>
</head>
<body onLoad="checkForRefresh()"> 
<p><a href="javascript:switchFocus();">Test Link</a></p>
</body>
</html>
这个问题

已经讨论过了,有些浏览器不听window.focus()。请查看评论#2533335。

当我通过将

函数放在window对象上使函数正确全局化时,我让它工作

http://jsfiddle.net/u52xE/3/

window.switchFocus = function() {
    myWindow.focus();
}

不过,在你的HTML和全局函数中使用javascript并不理想,我建议使用jQuery来附加事件。