【问题标题】:$(window).on("focus", ...) not working on chrome mobile$(window).on("focus", ...) 不适用于 chrome 移动设备
【发布时间】:2017-10-31 17:16:52
【问题描述】:

有一个问题问同样的问题,但它没有一个令人满意的答案,因为我已经尝试过了。

这是我的代码:

$(window).on("focus", function() {
    doSomeFunction();
    alert("I am here!");
});

我正在使用窗口,因为文档甚至在 chrome 桌面上都无法运行,有人建议在 stackoverflow 中使用 window 并且它至少可以在桌面上运行,但在 chrome 移动版中是另一种情况。

使用 firefox mobile,我可以切换标签、按 home 并重新打开 firefox、按 home、滑动关闭并重新打开 firefox,然后我会收到警报消息,而 chrome 则这些情况都不起作用。

需要找到一种方法让它在该浏览器上运行,记住,它可以在 chrome 和 firefox 桌面和 firefox 移动设备上运行,但不能在 chrome 移动设备上运行。

提前致谢

【问题讨论】:

  • 也许visibilitychange 是个不错的选择?
  • @StevenV 自己找到了解决方案,我会为遇到此问题的其他人自行解答,无论如何谢谢

标签: javascript jquery google-chrome


【解决方案1】:

有一个解决方案,它可能不是最好的,但它有效。

当放置在 .js 文件上时,显然 chrome mobile 没有捕捉到此事件 所以我只需将它放在我的 html 文档中的标签上:

<script>
    $(window).on("focus", function() {
        doSomeFunction();
        alert("I am here!");
    });
</script>

在这种情况下,doSomeFunction() 是在 DOM 中还是在 .js 文件中并不重要,只要确保焦点事件在 DOM 中即可

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-11
    • 2020-07-15
    • 2013-11-22
    • 1970-01-01
    • 1970-01-01
    • 2015-11-15
    • 2016-11-02
    • 2023-03-23
    相关资源
    最近更新 更多