Window.open 弹出冻结整个桌面
Window.open pop up freezes the whole desktop
我遇到了这个奇怪的问题。我有一个应用程序,我正在从起始页执行 window.open。我写的代码如下:
i=1;
while i>0
{
if (!mywindow.closed)
{
mywindow.focus()
}
else {
1--;
}
}
这是为了确保弹出窗口 window 始终保持焦点,除非它被关闭。
但是发生的问题是,当流行音乐出现时,整个桌面都会冻结。除非我们关闭它,否则我们无法做任何其他事情。我们的目的是冻结应用程序而不是整个桌面。我们如何解决这个问题?提前致谢。
JavaScript不是多线程;如果你 运行 一个 while
循环,它将占用整个 JavaScript 的执行。换句话说,mywindow.closed
永远没有机会改变。
如果您想响应某些变化,请不要使用轮询循环。改为使用事件:
// Not sure if this would work, but illustrates using events.
mywindow.addEventListener('blur', function () {
mywindow.focus();
});
我遇到了这个奇怪的问题。我有一个应用程序,我正在从起始页执行 window.open。我写的代码如下:
i=1;
while i>0
{
if (!mywindow.closed)
{
mywindow.focus()
}
else {
1--;
}
}
这是为了确保弹出窗口 window 始终保持焦点,除非它被关闭。 但是发生的问题是,当流行音乐出现时,整个桌面都会冻结。除非我们关闭它,否则我们无法做任何其他事情。我们的目的是冻结应用程序而不是整个桌面。我们如何解决这个问题?提前致谢。
JavaScript不是多线程;如果你 运行 一个 while
循环,它将占用整个 JavaScript 的执行。换句话说,mywindow.closed
永远没有机会改变。
如果您想响应某些变化,请不要使用轮询循环。改为使用事件:
// Not sure if this would work, but illustrates using events.
mywindow.addEventListener('blur', function () {
mywindow.focus();
});