Javascript 确定浏览器选项卡是否处于活动状态?-艾美?

Javascript 确定浏览器选项卡是否处于活动状态?-艾美?,javascript,tabs,focus,Javascript,Tabs,Focus,我已经看过了: 以及: 第一个链接为现代浏览器提供了解决方案,但在IE7/8中不起作用。这两个问题都相当古老。确定访问者是否正在查看其打开的选项卡的问题是否有解决方案 几乎所有我尝试过的东西在Chrome中都能正常工作。但IE7只是失败了 我只想设置一个全局变量,表示是否正在查看页面 i、 e 稍有不同,但表明它有效,这是一个需要的延迟。不是很优雅,但如果它能工作的话。在谷歌搜索了很多次之后。。。还有一些。。。还有一些。。。大约4个小时后,我终于发现这个链接隐藏在互联网的深处。这些评论表明存

我已经看过了:

以及:

第一个链接为现代浏览器提供了解决方案,但在IE7/8中不起作用。这两个问题都相当古老。确定访问者是否正在查看其打开的选项卡的问题是否有解决方案

几乎所有我尝试过的东西在Chrome中都能正常工作。但IE7只是失败了

我只想设置一个全局变量,表示是否正在查看页面

i、 e


稍有不同,但表明它有效,这是一个需要的延迟。不是很优雅,但如果它能工作的话。

在谷歌搜索了很多次之后。。。还有一些。。。还有一些。。。大约4个小时后,我终于发现这个链接隐藏在互联网的深处。这些评论表明存在一个小bug,但对于我需要它的目的来说,它是好的


也许我的问题不清楚。我不想再打开一扇窗户。我只想在浏览器不查看选项卡时停止事件。然后在它们返回到选项卡时恢复它们
var isActive = true;

$(window).focus(function() {
    isActive = true;
});

$(window).blur(function() {
    isActive = false;
});

// test
setInterval(function () {
  console.log(window.isActive ? 'active' : 'inactive'); 
}, 1000);
var isActive = true;
function onBlur() {
    isActive = false;
};
function onFocus(){
    isActive = true;
};

if (/*@cc_on!@*/false) { // check for Internet Explorer
    document.onfocusin = onFocus;
    document.onfocusout = onBlur;
} else {
    window.onfocus = onFocus;
    window.onblur = onBlur;
}