轉載請注明來源,謝謝
實作長按esc退出全屏,全屏模式下攔截esc按鍵事件
作者:theajack
浏覽器的全屏api
requestFullscreen
在全屏模式下會屏蔽掉對
esc
按鍵的監聽,全屏模式下按 esc 隻能是退出全屏。
使用
navigator.keyboard
api 可以實作長按 esc 退出全屏,而使得我們的js代碼可以攔截到esc按鍵事件
檢視執行個體 | 執行個體源碼
api使用如下,該api隻在新版本chrome且是https模式(或localhost和本地檔案)下可以,需要做相容處理
if(navigator.keyboard && navigator.keyboard.lock){
navigator.keyboard.lock(['Escape']);
}else{
console.log('您的浏覽器上不支援該功能')
}
其他一些攔截和阻止按鍵預設事件的代碼在執行個體源碼中都有,就不一一列舉啦