【发布时间】:2020-05-27 05:54:46
【问题描述】:
我有一个最新版本的 chrome 窗口(父窗口)。当我单击父窗口上的按钮时,应该打开一个新的第二个 chrome 窗口(子窗口)并且它应该在前面。当我第二次点击同一个按钮(在父窗口中)时,已经打开的子窗口应该在前面(焦点应该在子窗口中设置)。
问题: 第一次单击按钮时,我正在使用 "window.open(uri)" 打开一个新的 chrome 子窗口,并且它集中在前面。 第二次单击按钮时,我使用相同的 "window.open(uri)" 将已经打开的 chrome 窗口带到 front 但这不起作用。要在子窗口上执行的操作正确发生并且填充的数据是正确的,但窗口没有出现在前面。
我曾尝试在按钮的onclick()事件中使用window.focus()、window.blur(),但都没有希望。
如果我能得到一些答案,不胜感激。
【问题讨论】:
-
将子窗口保存在变量中并调用
new_example_window.focus() -
你试过
let w=window.open(uri)然后w.focus()?窗口中的页面是否与脚本来自同一来源?如果是这样,并且您可以控制页面,则可以在新窗口中执行<script>window.focus()</script> -
是的,我已经尝试过类似 function onclick() { var win = window.open(uri); win.focus();这也行不通。两个窗口都来自同一来源。第一次点击按钮时,它工作正常
标签: javascript