如果窗口未激活,则运行功能

时间:2013-01-25 16:15:54

标签: javascript

我目前正在开发一个小型会话系统。

当用户编写新邮件时,页面标题将更改为新邮件,这是预期的。

但是,如果收到邮件时窗口处于活动状态,则标题应更新。

目前,无论窗口是否处于活动状态,它都会显示新消息,并且只有在用户更改标签并返回时才会再次将其删除。

如果窗口处于活动状态,如何使其仅运行if (newCount !== messagesCount)功能?

这是当前的代码:

if (newCount !== messagesCount) {
    document.title = 'New Message - ' + title;
}

$(window).focus(function() {
    document.title = title;
});

1 个答案:

答案 0 :(得分:1)

您可以尝试跟踪收听 onfocus onblur Windows事件的窗口状态,例如:

var hasFocus = true;
window.onfocus = function(){ hasFocus = true;}
window.onblur = function(){ hasFocus = false;}

并在方法中检查 hasFocus

的值