React中如何设置全屏监听Esc键事件?

2026-05-20 16:094阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计372个文字,预计阅读时间需要2分钟。

React中如何设置全屏监听Esc键事件?

目录- 全屏监听Esc键- 全屏与退出全屏- 监听全屏退出事件- React添加监听事件- 监听键盘事件- React添加监听键盘事件- 全屏监听Esc键- 全屏与退出全屏- if (isFull) { document.exitFullscreen()}

目录
  • 全屏监听Esc键
    • 全屏与退出全屏
    • 监听退出全屏事件
  • React添加监听事件 监听键盘事件
    • react添加监听事件监听键盘事件

全屏监听Esc键

全屏与退出全屏

if (isFull) {       document.exitFullscreen();     } else {       tree.current.requestFullscreen();       tree.current.style.width = '100%'     }   };

监听退出全屏事件

退出方式有两种:

  • 1.通过上面的requestFullscreen。
  • 2.通过按esc退出

问题:通过requestFullscreen操作可以修改数据状态,但当用户按esc键时,是监听不到的。

采用如下方式:

const escFunction = () => { setFull((prevFill) => !prevFill); } useEffect(() => { // 监听退出全屏事件 --- chrome 用 esc 退出全屏并不会触发 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 () => { //销毁时清除监听 document.removeEventListener("webkitfullscreenchange", escFunction); document.removeEventListener("mozfullscreenchange", escFunction); document.removeEventListener("fullscreenchange", escFunction); document.removeEventListener("MSFullscreenChange", escFunction); } }, []);

React添加监听事件 监听键盘事件

react添加监听事件监听键盘事件

参考:

React中如何设置全屏监听Esc键事件?

记录下确认框confirm代码:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持易盾网络。

本文共计372个文字,预计阅读时间需要2分钟。

React中如何设置全屏监听Esc键事件?

目录- 全屏监听Esc键- 全屏与退出全屏- 监听全屏退出事件- React添加监听事件- 监听键盘事件- React添加监听键盘事件- 全屏监听Esc键- 全屏与退出全屏- if (isFull) { document.exitFullscreen()}

目录
  • 全屏监听Esc键
    • 全屏与退出全屏
    • 监听退出全屏事件
  • React添加监听事件 监听键盘事件
    • react添加监听事件监听键盘事件

全屏监听Esc键

全屏与退出全屏

if (isFull) {       document.exitFullscreen();     } else {       tree.current.requestFullscreen();       tree.current.style.width = '100%'     }   };

监听退出全屏事件

退出方式有两种:

  • 1.通过上面的requestFullscreen。
  • 2.通过按esc退出

问题:通过requestFullscreen操作可以修改数据状态,但当用户按esc键时,是监听不到的。

采用如下方式:

const escFunction = () => { setFull((prevFill) => !prevFill); } useEffect(() => { // 监听退出全屏事件 --- chrome 用 esc 退出全屏并不会触发 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 () => { //销毁时清除监听 document.removeEventListener("webkitfullscreenchange", escFunction); document.removeEventListener("mozfullscreenchange", escFunction); document.removeEventListener("fullscreenchange", escFunction); document.removeEventListener("MSFullscreenChange", escFunction); } }, []);

React添加监听事件 监听键盘事件

react添加监听事件监听键盘事件

参考:

React中如何设置全屏监听Esc键事件?

记录下确认框confirm代码:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持易盾网络。