【问题标题】:Exiting Chrome Full Screen --start-fullscreen from JavaScript从 JavaScript 退出 Chrome 全屏 --start-fullscreen
【发布时间】:2020-03-02 00:37:50
【问题描述】:

我正在使用下面的代码在 Chrome 中切换全屏模式。

除非我使用 --start-fullscreen 标志启动 Chrome,否则它会很好用。从那里,它看起来像是在尝试做某事;指示器从“按[Esc]退出全屏”变为“按[F11]退出全屏”,但窗口仍处于全屏状态。

我希望应用程序以全屏模式加载(例如在系统启动时),但能够使用切换按钮退出/重新进入全屏模式。

有什么想法吗?

<html>
<head>
</head>
<body>
<input type="button" value="Toggle Fullscreen" onclick="ToggleFs()"></input>
<script type="text/javascript">
var ToggleFs = function() {
    if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement && !document.msFullscreenElement) {
        if (document.documentElement.requestFullscreen) {
            document.documentElement.requestFullscreen();
        } else if (document.documentElement.msRequestFullscreen) {
            document.documentElement.msRequestFullscreen();
        } else if (document.documentElement.mozRequestFullScreen) {
            document.documentElement.mozRequestFullScreen();
        } else if (document.documentElement.webkitRequestFullscreen) {
            document.documentElement.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
        }
    } else {
        if (document.exitFullscreen) {
            document.exitFullscreen();
        } else if (document.webkitCancelFullscreen) {
            document.webkitCancelFullscreen();
        } else if (document.msExitFullscreen) {
            document.msExitFullscreen();
        } else if (document.mozCancelFullScreen) {
            document.mozCancelFullScreen();
        } else if (document.webkitExitFullscreen) {
            document.webkitExitFullscreen();
        }
    }
}
</script>
</body>
</html>

【问题讨论】:

  • 你检查过这个stackoverflow.com/questions/2863351/… 吗?我不确定您是否已经看过它,但它可能会让您对某些事情有所了解
  • @rule 我确实验证了脚本是否成功识别出窗口处于全屏模式。问题是当使用上述标志启动时,document.exitFullscreen() 调用无效。
  • @bstiffler582 您找到任何解决方案了吗?我也面临同样的问题。
  • @N.F.不幸的是没有。我相信我们最终为这个应用程序使用了自助服务终端模式,这也带来了一些令人头疼的问题......

标签: javascript google-chrome fullscreen


【解决方案1】:

我今天一直在玩这个,发现如果您自己的网站没有使用requestFullscreen 启用全屏模式,您将无法以编程方式退出全屏模式。您可以在单击事件上切换全屏,并检测按下 F11 时触发的全屏事件,但如果您尝试调用 document.exitFullscreen() 而未首先调用 requestFullscreen,则会引发错误。

起初这没有意义,但背后有思想。用户可以随时通过按 F11 在其浏览器中启用全屏模式,还可以使用 --start-fullscreen 标志启动浏览器。使用全屏模式的浏览器,他们可以导航到任何网站,而不仅仅是停留在您的网站上。因此,浏览器不允许网站以编程方式禁用用户的全屏模式并破坏他们的设置是有道理的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-23
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-28
    相关资源
    最近更新 更多