广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >React如何实现全屏监听Esc键
  • 268
分享到

React如何实现全屏监听Esc键

React监听Esc键全屏监听Esc键React监听 2022-11-13 14:11:40 268人浏览 泡泡鱼
摘要

目录全屏监听Esc键全屏与退出全屏监听退出全屏事件React添加监听事件 监听键盘事件react添加监听事件监听键盘事件全屏监听Esc键 全屏与退出全屏 if (isFull) {

全屏监听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); 
    document.addEventListener("mozfullscreenchange", escFunction); 
    document.addEventListener("fullscreenchange", escFunction); 
    document.addEventListener("msfullscreenchange", escFunction); 
    return () => {
    //销毁时清除监听
      document.removeEventListener("webkitfullscreenchange", escFunction);
      document.removeEventListener("mozfullscreenchange", escFunction);
      document.removeEventListener("fullscreenchange", escFunction);
      document.removeEventListener("MSFullscreenChange", escFunction);
    }
  }, []);

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

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

参考:

记录下确认框confirm代码:

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

--结束END--

本文标题: React如何实现全屏监听Esc键

本文链接: https://www.lsjlt.com/news/172125.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • React如何实现全屏监听Esc键
    目录全屏监听Esc键全屏与退出全屏监听退出全屏事件React添加监听事件 监听键盘事件react添加监听事件监听键盘事件全屏监听Esc键 全屏与退出全屏 if (isFull) { ...
    99+
    2022-11-13
    React监听Esc键 全屏监听Esc键 React监听
  • vue中实现全屏以及对退出全屏的监听
    目录前言:       实现步骤:完整源码:更多资料:前言:    &n...
    99+
    2022-11-12
  • WPF如何实现监听快捷键
    今天小编给大家分享一下WPF如何实现监听快捷键的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.调用Win32 API优先级...
    99+
    2023-07-05
  • 如何实现Flex键盘事件的监听机制
    这篇文章给大家分享的是有关如何实现Flex键盘事件的监听机制的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Flex键盘事件的监听Flex的事件监听机制很完善,下面主要简单的讲一下Flex键盘事件的监听。首先,要理...
    99+
    2023-06-17
  • Vue.js如何实现监听
    这篇文章主要为大家展示了“Vue.js如何实现监听”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Vue.js如何实现监听”这篇文章吧。demo:<scri...
    99+
    2022-10-19
  • React如何自定义视频全屏按钮实现全屏功能
    本篇内容介绍了“React如何自定义视频全屏按钮实现全屏功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、绘制全屏按钮绘制全屏按钮,并绑...
    99+
    2023-07-04
  • 如何实现Spring事件发布监听、顺序监听和异步监听
    这篇文章给大家分享的是有关如何实现Spring事件发布监听、顺序监听和异步监听的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. Spring的事件通知Spring的事件通知本质上就是发布-订阅,即生产者-消费者...
    99+
    2023-06-22
  • vue监听滚动事件如何实现滚动监听
    这篇文章主要为大家展示了“vue监听滚动事件如何实现滚动监听”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue监听滚动事件如何实现滚动监听”这篇文章吧。在vu...
    99+
    2022-10-19
  • 如何实现vuejs事件监听
    这篇文章主要介绍如何实现vuejs事件监听,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 在vuejs中,可以使用“v-on”指令来实现事件监听,该指令用...
    99+
    2022-10-19
  • 如何实现Java监听器详解
    目录一、前言二、监听器模型三、案例实现四、测试一、前言 监听器就是监听事件源是否发生了某一个事件,当发生指定监听的事件时事件源会向已注册的监听器发送消息对象。监听器可以获得事件对象进...
    99+
    2022-11-12
  • Spring如何实现内置监听器
    这篇文章主要介绍“Spring如何实现内置监听器”,在日常操作中,相信很多人在Spring如何实现内置监听器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Spring如何实现内置监听器”的疑惑有所帮助!接下来...
    99+
    2023-06-20
  • 如何实现React Native屏幕适配
    这篇文章给大家分享的是有关如何实现React Native屏幕适配的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。屏幕适配的前置知识RN 中的尺寸单位为 dp,而设计稿中的单位为 ...
    99+
    2022-10-19
  • JS监听变量改变如何实现
    这篇文章主要介绍“JS监听变量改变如何实现”,在日常操作中,相信很多人在JS监听变量改变如何实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JS监听变量改变如何实现”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-07-06
  • Hibernate如何实现拦截器与监听器
    这篇文章将为大家详细讲解有关Hibernate如何实现拦截器与监听器,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。拦截器与事件都是Hibernate的扩展机制,Interceptor接口是老的实现机制,现...
    99+
    2023-06-17
  • JavaScript如何实现全屏和退出全屏事件
    这篇文章给大家分享的是有关JavaScript如何实现全屏和退出全屏事件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。代码如下:window.isflsgrn =&nb...
    99+
    2022-10-19
  • 如何实现HTML5全屏API
    这篇文章主要介绍“如何实现HTML5全屏API”,在日常操作中,相信很多人在如何实现HTML5全屏API问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何实现HTML5全屏A...
    99+
    2022-10-19
  • 如何用JS实现简单的数据监听
    目录概述第一步第二步为什么需要单独的_data?给data多添加一点数据格式化初始值格式化object对象,监听值概述 主要是用Object.defineProperty实现类似vu...
    99+
    2022-11-12
  • react如何实现搜索关键字高亮
    这篇文章主要讲解了“react如何实现搜索关键字高亮”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“react如何实现搜索关键字高亮”吧!react实现搜索关键字高亮的方法:1、利用正则从列表...
    99+
    2023-07-04
  • SpringBoot如何实现ApplicationEvent事件的监听与发布
    这篇文章主要介绍“SpringBoot如何实现ApplicationEvent事件的监听与发布”,在日常操作中,相信很多人在SpringBoot如何实现ApplicationEvent事件的监听与发布问题上存在疑惑,小编查阅了各式资料,整理...
    99+
    2023-07-05
  • Jquery如何实现滚动监听和附加导航
    这篇文章给大家分享的是有关Jquery如何实现滚动监听和附加导航的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。导航思路:设定nav导航的类。设定索引值。点击导航内容,导航的索引和...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作