如何检查浏览器窗口是否处于活动状态
How to check whether the browser window is active or not?
我正在使用Javascript实现某种即时消息传递。当消息到达时,如果用户没有专注于浏览器窗口并且没有声音,我想播放声音。我已经看到关于窗口。onfocus和窗口。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();
}
}
我认为没有任何单行技术可以做到这一点。
看:http://www.thefutureoftheweb.com/blog/detect-browser-window-focus
相关文章:
- 如何检测用户是否在同一会话中打开了多个窗口或选项卡
- 检查iframe内部的窗口是否已关闭
- 是否可以使用Jquery操作窗体的目标窗口
- 是否可以使用javascript获取以em为单位的窗口宽度
- 用javascript从窗口获取文档,同时检查文档是否已加载
- window.open:是否可以通过修改DOM来打开一个新窗口
- 是否可以从弹出窗口触发内容脚本中的行为
- 在Chrome扩展程序中,是否可以截屏并在弹出窗口中显示屏幕
- 是否可以模拟 qUnit 测试的窗口位置对象
- iframe是否可能在没有主窗口帮助的情况下自行调整大小
- 是否可以使用javascript激活windows应用程序窗口
- 是否可以使用JS打开具有所需内容类型的浏览器窗口
- 是否可以在Kendo网格中只显示来自Kendo数据源的某些字段,而在“;添加“;弹出窗口
- 是否可以打开一个新窗口并将iframe嵌入其中
- 确定是否在不使用任何全局变量的情况下加载了窗口
- jQuery:添加和删除<br>标签,这取决于窗口宽度以及标签是否已经存在
- 如何检查窗口是否已滚动到href,然后在javascript/jQuery中执行函数
- 检查窗口是否为弹出窗口的另一种方法
- 如何检测浏览器窗口是否已从另一个浏览器窗口打开
- 我想知道是否可以使用 node.js 在窗口之间发送数据