如何强制我的 Chrome 浏览器接受 .requestFullscreen()?
How to force my Chrome browser to accept .requestFullscreen()?
我正在为自己编写一个应用程序,我需要通过 JavaScript 自动进入全屏(今天我模拟了 F11 的按下,这通常有效,但并非总是有效)。
我想使用 .requestFullscreen()
(通过 screenfull.js
)但我得到
Failed to execute 'requestFullscreen' on 'Element': API can only be
initiated by a user gesture.
这是可以理解的(出于安全/垃圾邮件/可用性的原因)并且在很多页面上都提到了。
现在,由于这是我 运行 在我的 Chrome 浏览器上的应用程序,我希望能够在我的浏览器中允许此请求。 这是 Chrome 的可能设置吗?
您可以使用自助服务终端模式:
在 Windows 上:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --chrome --fullscreen --kiosk http://10.20.30.40/page/
在 Linux
chrome --chrome --fullscreen --kiosk http://10.20.30.40/page/
全屏 api 有点令人困惑,因为到目前为止,还没有浏览器接受纯 "unprefixed" 版本。 Mozilla 对全屏有很好的解释 api here,并列出了适当的前缀。
所以要在 Chrome 中获得全屏,您实际上需要调用 .webkitRequestFullscreen()
。如果你想支持多种浏览器,你需要使用 if-else 块来确保你拥有所有正确的前缀,如下所示:
if (elem.requestFullscreen) {
elem.requestFullscreen();
} else if (elem.webkitRequestFullScreen) {
elem.webkitRequestFullScreen();
} else if (elem.mozRequestFullScreen) {
elem.mozRequestFullScreen();
} else if (elem.msRequestFullscreen) {
elem.msRequestFullscreen();
}
这很丑陋,但不幸的是这是必要的。您还需要为退出全屏添加适当的前缀,以及您可能应用的任何 css。您可能会看到的最后一个错误是 webkit 浏览器不会在全屏模式下以全尺寸显示元素,因此您需要将以下内容添加到样式表中。
-webkit-full-screen {
width: 100%;
height: 100%;
}
我正在为自己编写一个应用程序,我需要通过 JavaScript 自动进入全屏(今天我模拟了 F11 的按下,这通常有效,但并非总是有效)。
我想使用 .requestFullscreen()
(通过 screenfull.js
)但我得到
Failed to execute 'requestFullscreen' on 'Element': API can only be initiated by a user gesture.
这是可以理解的(出于安全/垃圾邮件/可用性的原因)并且在很多页面上都提到了。
现在,由于这是我 运行 在我的 Chrome 浏览器上的应用程序,我希望能够在我的浏览器中允许此请求。 这是 Chrome 的可能设置吗?
您可以使用自助服务终端模式:
在 Windows 上:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --chrome --fullscreen --kiosk http://10.20.30.40/page/
在 Linux
chrome --chrome --fullscreen --kiosk http://10.20.30.40/page/
全屏 api 有点令人困惑,因为到目前为止,还没有浏览器接受纯 "unprefixed" 版本。 Mozilla 对全屏有很好的解释 api here,并列出了适当的前缀。
所以要在 Chrome 中获得全屏,您实际上需要调用 .webkitRequestFullscreen()
。如果你想支持多种浏览器,你需要使用 if-else 块来确保你拥有所有正确的前缀,如下所示:
if (elem.requestFullscreen) {
elem.requestFullscreen();
} else if (elem.webkitRequestFullScreen) {
elem.webkitRequestFullScreen();
} else if (elem.mozRequestFullScreen) {
elem.mozRequestFullScreen();
} else if (elem.msRequestFullscreen) {
elem.msRequestFullscreen();
}
这很丑陋,但不幸的是这是必要的。您还需要为退出全屏添加适当的前缀,以及您可能应用的任何 css。您可能会看到的最后一个错误是 webkit 浏览器不会在全屏模式下以全尺寸显示元素,因此您需要将以下内容添加到样式表中。
-webkit-full-screen {
width: 100%;
height: 100%;
}