首先我们先来看一个例子,foucus()
是获取焦点的方法,那它在设置创建和调整窗口的过程中有什么作用呢?
<script>
// 创建一个窗口
var w;
function openwindow(){
//创建的窗口大小宽高均为100px,
w=window.open("","","width=100,height=100'");
w.focus();
}
// 调整窗口
function myFunction(){
w.resizeTo(500,500);
w.focus();
}
</script>
<button onclick="openwindow()">创建窗口</button>
<button onclick="myFunction()">调整窗口</button>
1、当我们只注释掉openwindow()
中的 w.focus();
时,点击创建窗口和调整窗口按钮都正常。
2、当我们同时注释掉myFunction()
中的 w.focus();
和只注释掉myFunction()
中的 w.focus();
掉时,发现只有创建窗口正常,点击调整窗口按钮,创建的窗口消失了,调整窗口也没有出现,其实并不是没有出现,只是出现在了最底层,把桌面上的所有页面都最小化后就可以看到调整窗口的页面了
从上面的结果,我们可以知道Window.focus()
的作用是让页面成为当前窗体 ,focus对象可以让已经最小化的窗口重新获得焦点,从而弹出原页面window.focus();
,
如果不起作用可以先模糊焦点然后再聚焦:window.blur();setTimeout(window.focus(),0);