确定网页是否具有前景窗口焦点/是活动标签?

时间:2010-07-16 19:41:32

标签: javascript html5 focus

如果我能检测到该页面不再聚焦,我希望能够将我的应用程序的活动静音。例如,如果页面位于后台选项卡或其他应用程序具有焦点,我想禁用不断轮询的脚本或将模式通知切换到新的HTML5通知API。

有没有办法用JS获得这个,如果有,支持哪些浏览器?

PS - 我见过this,但不知道它是否适用于我想做的事情。有人有任何见解吗?

1 个答案:

答案 0 :(得分:15)

您可以在blur上收听window事件,然后在用户返回时,您可以使用focus事件:

以下是jQuery中的一个示例:

$(window).blur(disableStuff).focus(enableStuff);

或者在纯JavaScript中:

window.onblur = disableStuff;
window.onfocus = enableStuff;