gpt4 book ai didi

javascript - 结合请求全屏和 F11

转载 作者:行者123 更新时间:2023-12-03 07:13:54 25 4
gpt4 key购买 nike

我有一个带有按钮的页面,允许用户将页面设置为全屏。我使用 requestFullscreen(实际上是 webkitRequestFullScreen,因为我在 Chrome 中进行测试,但这个问题普遍适用)。所有这一切都很好。

但是,用户也可以使用 F11 进入全屏,这会导致两个问题:

  1. F11 不影响 fullscreenElement 的值,即使在使用 F11 进入全屏后该值仍为 null
  2. exitFullscreen 不能用于反转 F11 设置的全屏(尽管反转确实有效 - F11 可以关闭使用 requestFullscreen 设置的全屏)。

有没有办法结合 F11 功能和全屏 API?

最佳答案

您可以在应用程序中拦截 F11 键盘事件并改为调用 requestFullscreen API。用户应该看不出他们使用 F11、按钮、链接等有什么区别。

var isFullScreen = false;
function handleWindowKeydownEvent(event = {}) {
if(event.code === 'F11') {
event.preventDefault();
if(isFullScreen) {
isFullScreen = false;
window.document.exitFullscreen().catch((err) => {
console.log(err);
});
} else {
isFullScreen = true;
window.document.documentElement.requestFullscreen().catch((err) => {
console.log(err);
});
}
}
}
window.addEventListener('keydown', handleWindowKeydownEvent);

关于javascript - 结合请求全屏和 F11,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51114885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com