我有一个带有按钮的页面,它允许用户将页面设置为全屏。我使用requestFullscreen (实际上是webkitRequestFullScreen,因为我正在用Chrome进行测试,但这个问题一般适用)。这一切都很好。
但是,用户也可以使用F11转到全屏,这会导致两个问题:
有没有办法将F11功能和全屏API结合起来?
发布于 2022-09-01 23:18:33
您可以在应用程序中拦截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);发布于 2020-10-19 09:40:55
功能不同,F11是浏览器的全屏,requestFullscreen是Dom全屏显示
https://stackoverflow.com/questions/51114885
复制相似问题