我正在寻找一个事件,当用户从页面切换到另一个标签时会触发,另一个事件会在用户再次切换回标签时触发。
所有浏览器中的window.onblur和window.onfocus don't seem to work correctly
为了合成这个事件,我可以看一下代理吗?
答案 0 :(得分:35)
您可以尝试使用提供跨浏览器支持的框架,例如MooTools或jQuery。他们应该能够更可靠地检测浏览器窗口的blur
和focus
事件。
我个人使用jQuery取得了很大的成功:
$(window).blur(function(e) {
// Do Blur Actions Here
});
$(window).focus(function(e) {
// Do Focus Actions Here
});
答案 1 :(得分:17)
您也可以尝试使用VisibilityAPI。
document.addEventListener("visibilitychange", function() {
if (document.hidden){
console.log("Browser tab is hidden")
} else {
console.log("Browser tab is visible")
}
});