将弹出窗口带到前面

在我的应用程序中,我有一个弹出窗口,当我选择一些选项时会打开信息。

第一次它OK,popup hightlight在一切之前。

但是,当他失去焦点时,当用户进入其他窗口时,如果用户再次点击同一选项,我希望弹出的节目再次显示在所有内容面前。

我尝试类似的东西:

 window.focus(); document.focus(); this.focus(); 

但是对我不起作用。

我错过了什么?

您应该保持对打开的弹出窗口的引用,并在其上调用focus方法。

 var win = window.open(url, name, args); win.focus(); 

如果你给一个名字打开弹出窗口,下次当你打开一个同名的弹出窗口时,如果它没有关闭,它将使用相同的弹出窗口。 你只需要关注它。

您可以使用此简单函数来处理弹出窗口

 function windowOpener(url, name, args) { if(typeof(popupWin) != "object" || popupWin.closed) { popupWin = window.open(url, name, args); } else{ popupWin.location.href = url; } popupWin.focus(); }