React如何實現(xiàn)全屏監(jiān)聽Esc鍵
更新時間:2022年08月08日 16:46:30 作者:咕咚咕咚咚
這篇文章主要介紹了React如何實現(xiàn)全屏監(jiān)聽Esc鍵,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
全屏監(jiān)聽Esc鍵
全屏與退出全屏
if (isFull) {
? ? ? document.exitFullscreen();
? ? } else {
? ? ? tree.current.requestFullscreen();
? ? ? tree.current.style.width = '100%'
? ? }
? };監(jiān)聽退出全屏事件
退出方式有兩種:
- 1.通過上面的requestFullscreen。
- 2.通過按esc退出
問題:通過requestFullscreen操作可以修改數(shù)據(jù)狀態(tài),但當(dāng)用戶按esc鍵時,是監(jiān)聽不到的。
采用如下方式:
const escFunction = () => {
setFull((prevFill) => !prevFill);
}
useEffect(() => {
// 監(jiān)聽退出全屏事件 --- chrome 用 esc 退出全屏并不會觸發(fā) keyup 事件
document.addEventListener("webkitfullscreenchange", escFunction); /* Chrome, Safari and Opera */
document.addEventListener("mozfullscreenchange", escFunction); /* Firefox */
document.addEventListener("fullscreenchange", escFunction); /* Standard syntax */
document.addEventListener("msfullscreenchange", escFunction); /* IE / Edge */
return () => {
//銷毀時清除監(jiān)聽
document.removeEventListener("webkitfullscreenchange", escFunction);
document.removeEventListener("mozfullscreenchange", escFunction);
document.removeEventListener("fullscreenchange", escFunction);
document.removeEventListener("MSFullscreenChange", escFunction);
}
}, []);React添加監(jiān)聽事件 監(jiān)聽鍵盤事件
react添加監(jiān)聽事件監(jiān)聽鍵盤事件



參考:

記錄下確認(rèn)框confirm代碼:

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用reactjs優(yōu)化了進(jìn)度條頁面性能提高70%
這篇文章主要介紹了使用reactjs優(yōu)化了進(jìn)度條后頁面性能提高了70%的操作技巧,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04
解決React報錯Parameter 'props' implicitly&nb
這篇文章主要為大家介紹了React報錯Parameter 'props' implicitly has an 'any' type的解決處理方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
react+axios實現(xiàn)github搜索用戶功能(示例代碼)
這篇文章主要介紹了react+axios實現(xiàn)搜索github用戶功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-09-09

