我正在使用 Javascript 来实现某种即时消息传递。当消息到达时,如果用户没有专注于浏览器窗口,我想播放声音,否则没有声音。我见过 window.onfocus 和 window.onblur 但这些似乎是事件监听器。相反,我想要一些更简单的东西,它将在顺序代码中返回 true 或 false;这样
if (windowOpen) // user on my window
{
playSound();
}
// do rest of the messaging
有没有这么简单、最好是单行的技术?
最佳答案
我不明白你对事件监听器有什么看法,也不明白为什么它需要在一行上。看起来听众正是您所需要的,无论有多少行。
var focused = true;
window.onfocus = window.onblur = function(e) {
focused = (e || event).type === "focus";
}
function yourMessagingFunc() {
if (focused === false) {
playSound();
}
}
关于javascript - 如何检查浏览器窗口是否处于事件状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16361764/