【问题标题】:Detect if browser tab/window is focused or currently selected检测浏览器选项卡/窗口是否聚焦或当前被选中
【发布时间】:2023-02-26 06:09:57
【问题描述】:

我正在构建一个问答问答游戏(作为主应用程序的附带功能),与任何在线问答游戏一样,显然您可以通过谷歌搜索答案作弊。但是,我想检测离开当前/选项卡窗口的基本导航,因为这是查看用户在回答时是否离开焦点站点的简单方法(如果他们这样做,我将惩罚他们的分数)。

我使用了 Page Visibility API,在这个回答 https://stackoverflow.com/a/1060034/5579458 中有详细说明 - 但是它仅在用户更改选项卡或最小化/最大化窗口时才有效。如果用户保持选项卡处于活动状态,则不会触发 onchange 事件,而是从任务栏最大化另一个程序或将焦点放在另一个窗口上。我们如何编程呢?

【问题讨论】:

    标签: javascript dom browser window focus


    【解决方案1】:

    如果 visibilityState 对您没有好处,那么我想这是唯一的选择;这是相当严格的,是 onmouseout 事件!

     window.onmouseout=function(){
    
      alert('Where are you going?');
    
     };
    

    如果失败,请在文档正文上尝试...

     document.body.onmouseout=function(){
    
      alert('Where are you going?');
    
     };
    

    【讨论】:

      猜你喜欢
      • 2011-11-15
      • 1970-01-01
      • 2017-12-17
      • 2012-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-05
      相关资源
      最近更新 更多