2 回答

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊
您不應(yīng)該嘗試攔截轉(zhuǎn)義按鍵并從中得出對(duì)全屏模式的影響。相反,您應(yīng)該監(jiān)聽fullscreenchange
事件- 如果失敗也不會(huì)觸發(fā)requestFullscreen
:
要了解其他?代碼何時(shí)打開和關(guān)閉全屏模式,您應(yīng)該
fullscreenchange
在Document
.?fullscreenchange
例如,當(dāng)用戶手動(dòng)切換全屏模式,或者當(dāng)用戶切換應(yīng)用程序時(shí),導(dǎo)致應(yīng)用程序暫時(shí)退出全屏模式,傾聽并注意也很重要。
document.addEventListener('fullscreenchange',?(event)?=>?{ ??video.classList.toggle('video-fullscreen',?document.fullscreenElement?!=?null); });
但是,您可能根本不需要這個(gè)。只需在 CSS 中.video-fullscreen
使用:fullscreen
選擇器即可,而不是使用類!

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
嘗試將removeClass方法添加到您的事件偵聽器回調(diào)函數(shù)中。
//detect Escape key press
window.addEventListener("keydown", (e) => {
if(e.key === "Escape" && fullscreen){
e.preventDefault();
video.classList.remove('video-fullscreen');
closeFullscreen();
fullscreen = !fullscreen;
}
});
添加回答
舉報(bào)