可见性 API 在 Chrome 中 window.open 后不起作用

我试图使用 Visibility API,但它不适用于儿童。重现的最小示例:


<script>


document.onvisibilitychange = () => {

      console.log(document.visibilityState);

    }


if (!window.opener) {

    window.open(window.location.href, '_blank');

}


</script>

之后,父窗口仍然打印“可见”-“隐藏”,但子窗口仅在刷新时打印一次“隐藏”。


它在最新的 Opera 浏览器中运行良好,但在 Chrome 中却不行


老实说,当我来到这个最小的复制品时,我被困住了,不知道去哪里挖掘。任何想法可能是错的?


缥缈止盈
浏览 94回答 1
1回答

米琪卡哇伊

我也偶然发现了这个问题。我认为这个错误是在 Chrome 84 中引入的。我用 83 版对其进行了测试,它按预期工作。当前的 Canary-Build(版本 86)也在运行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript