2

我正在使用Fullscreen API在浏览器上切换全屏。它有效,但我有两个问题:

  1. 当我处于全屏状态时,如果我单击链接转到另一个页面(在我的域中),则页面将全屏显示。我想继续全屏模式。
  2. 在 Chrome 中,背景不会填满屏幕的整个高度。

当我使用 F11 键全屏时,不会出现这些问题。

这些问题有什么解决办法吗?其他一些 API 或解决方法?

我的 JavaScript 代码:

// toggle fullscren
function toggleFullScreen(element) {
    if (!document.fullscreenElement &&    // alternative standard method
        !document.mozFullScreenElement && !document.webkitFullscreenElement) {  // current working methods
        launchFullScreen(element);
    } else {
        cancelFullscreen();
    }
}

// Find the right method, call on correct element
function launchFullScreen(element) {
    if (element.requestFullScreen) {
        element.requestFullScreen();
    } else if (element.mozRequestFullScreen) {
        element.mozRequestFullScreen();
    } else if (element.webkitRequestFullScreen) {
        element.webkitRequestFullScreen();
    }
}

// Whack fullscreen
function cancelFullscreen() {
    if (document.cancelFullScreen) {
        document.cancelFullScreen();
    } else if (document.mozCancelFullScreen) {
        document.mozCancelFullScreen();
    } else if (document.webkitCancelFullScreen) {
        document.webkitCancelFullScreen();
    }
}

我的全屏切换按钮:

<a onclick="toggleFullScreen(document.documentElement);">
    <img src="~/Content/icons/fullscreen-launch-icon.svg" />
</a>
4

1 回答 1

1

关于您的第 1 个问题,Mozilla 网站是这么说的:

此外,在全屏模式下导航到另一个页面、更改选项卡或切换到另一个应用程序(例如,使用 Alt-Tab)也会退出全屏模式

这是一个链接: 使用全屏模式

于 2013-08-17T17:46:39.003 回答