javascript - 如何在浏览器窗口最小化和服务器发出通知时播放通知提示音

标签 javascript jquery html chat google-talk

我有一个要求,只有在浏览器窗口最小化时才需要播放通知声音,类似于 GTalk 所做的。

我已经尝试使用 JQuery 的 $(window).blur() 但它只在我手动模糊它时播放它,而不是在通知到来且窗口模糊时播放。

这是我试过的 fiddle :http://jsfiddle.net/zfUnm/

实际上这是一个聊天通知,只有在浏览器最小化时我才需要播放。

提前致谢

最佳答案

我认为他们不会在最小化时播放它。他们会在每次新通知到来时调用它,但当窗口处于事件状态时,他们会禁用声音。

var isactive = false;

function playSound(){
    if (isactive) return;
    playWav...;
}

onNotificaitonComes = playSound;

$(window).focus(function(){
    isactive = true;
}).blur(function(){
    isactive = false;
});

您可以在这里找到更多方法Is there a way to detect if a browser window is not currently active?

关于javascript - 如何在浏览器窗口最小化和服务器发出通知时播放通知提示音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12653370/

相关文章:

javascript - 未捕获格式错误的表格行,单元格未定义。无法在数据表中生成 pdf

javascript 如何使用按钮在不同的文本框中输入(我只能在十进制文本框中输入)

javascript - 在增量搜索 JS 中设置突出显示的文本样式

javascript - 当 Angular 没有返回数据时隐藏和显示元素

javascript - 获取掉落到输入元素时的值更改事件

javascript - 表单上的按钮 vs 链接 vs 输入类型 ="submit"

javascript - Jquery启用/禁用按钮文本区域验证

javascript - 异常 : Error in ./e 类 e_Host - 内联模板 0:0

javascript - 在点击 td 时,点击文本框

jquery - 如何在jquery中选择特定索引的html标签