我如何检测此标签中的用户focus
以及用户何时不对焦当前标签
我正在尝试代码:
window.onfocus = function() {
alert('Got focus');
}
为什么这不起作用?
答案 0 :(得分:1)
您要查找的活动是visibilityChange
https://developer.mozilla.org/en-US/docs/Web/Events/visibilitychange
如果事件被触发,您可以通过文档[隐藏]检查页面是否可见。有关工作示例,请参阅https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API。
答案 1 :(得分:0)
这是用于在当前标签获得或失去焦点时进行跟踪的API。你可以拼写它,它几乎适用于所有浏览器。我建议使用以下语法:
window.addEventListener('focus', function(e){
console.log('Focused');
}
window.addEventListener('blur', function(e){
console.log('Unfocused');
}
我可以想到没有触发事件的一个原因是你主要坐在浏览器控制台中。如果开发工具实际上是“焦点”,那么窗口不会收到焦点或蓝色事件。
答案 2 :(得分:0)
对于特定的HTML元素.....
$("#elementId").focus(function(){
//fire when element is focused...
});
$("#elementId").blur(function(){
//fire when element is unfocused...
});
窗口.....
$(function() {
$(window).focus(function() {
console.log('Focus event');
});
$(window).blur(function() {
console.log('un focus');
});
});