vue 使用screenfull.js,全屏时不能监控到esc键的问题

vue 使用screenfull.js,全屏时不能监控到esc键的问题

screenFull () {
      screenfull.toggle() //切换全屏
      if (screenfull.enabled) {
        screenfull.on('change', () => {
          if(screenfull.isFullscreen){
           //全屏时,要执行的操作
          }else{
            //取消全屏时,要执行的操作
          }
         // console.log('Am I fullscreen?', screenfull.isFullscreen ? 'Yes' : 'No');
        });
      }
    },

项目要加的功能是:全屏时,导航栏隐藏;取消全屏时,导航栏显示。
我一开始的思路是,监听esc键,当esc按动时,执行导航栏显示的代码。然后我发现,在全屏时,是监控不到这个按键的。接着我又想,那能不能监听到浏览器页面[退出全屏],这个动作,网上的很多例子我试了也没有成功。我又用了window.onresize,就在我以为自己成功了的时候,我发现,当页面没有最大化,鼠标拖动,导航栏也会时有时无。然后在网友帖子的启发下,我去看了原文档,screenfull.isFullscreen是可以判断是否为全屏状态的。
长路漫漫,给自己做一个笔记,如果能够帮助被同样问题困扰的你,深感荣幸,欢迎指教!

Logo

前往低代码交流专区

更多推荐