我使用下面的代码在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>发布于 2021-03-11 12:15:35
我今天一直在尝试这一点,我发现如果你自己的网站没有启用requestFullscreen,你就不能以编程方式退出全屏模式。您可以在单击事件上切换全屏,并检测当按下F11时触发的全屏事件,但是如果您尝试在没有调用requestFullscreen的情况下调用document.exitFullscreen(),它将抛出一个错误。
这在一开始是没有意义的,但背后是有思想的。用户可以随时通过按F11在浏览器中启用全屏模式,也可以使用--start-fullscreen标志启动浏览器。由于浏览器处于全屏模式,他们可以导航到任何网站,而不仅仅是停留在你的网站上。因此,浏览器不允许网站以编程方式禁用用户的全屏模式并破坏他们的设置是有意义的。
https://stackoverflow.com/questions/58714718
复制相似问题