如何使用javascript在Safari中全屏显示?

时间:2019-01-12 15:43:52

标签: javascript html fullscreen

我正在使用以下代码启动和停止全屏显示:

function fullscreen() {
    full = document.getElementById("full");
    if (!document.fullscreenElement && !document.mozFullScreen && !document.webkitIsFullScreen && !document.msFullscreenElement) {
        elem = document.getElementById("body");
        if (elem.requestFullscreen) {
            elem.requestFullscreen();
        } else if (elem.mozRequestFullScreen) {
            elem.mozRequestFullScreen();
        } else if (elem.webkitRequestFullscreen) {
            elem.webkitRequestFullscreen();
        } else if (elem.msRequestFullscreen) {
            elem.msRequestFullscreen();
        }
    } else {
        if (document.exitFullscreen) {
            document.exitFullscreen();
        } else if (document.mozCancelFullScreen) {
            document.mozCancelFullScreen();
        } else if (document.webkitExitFullscreen) {
            document.webkitExitFullscreen();
        } else if (document.msExitFullscreen) {
            document.msExitFullscreen();
        }
    }
}

它可用于除Safari之外的所有浏览器。我读到elem.webkitRequestFullscreen();适用于Safari。那么,如何在Safari中使用它呢?整个网站:jnnx.de/sia.html

3 个答案:

答案 0 :(得分:1)

iOS的Safari不支持全屏。感谢@GenericUser

答案 1 :(得分:0)

您可以制作一个简单的应用并使用Apple的WebKit框架。 (如果供内部使用。)

答案 2 :(得分:0)

如果您在iPad上将Safari与iOS 12.1+一起使用,则已启用了全屏api,但隐藏在“ webkit”前缀(webkitRequestFullscreen,webkitExitFullscreen等)的后面。

要以这种方式进入全屏模式,通常必须先进行几次互动。

这个API(据我所知)尚未完成,并且有一些奇怪的行为和怪癖。在几个月后,它可能会更改或打开到其他设备和/或浏览器,但目前仅在iPad上的iOS 12.1+版本的Safari上可以使用。

在运行iOS 12.1+的设备上,可以通过“设置> Safari>高级>实验功能>切换全屏API”下的Safari设置页面禁用/启用此API。