1. 给按钮点击事件@click=‘fullScreen()’
  2. 定义全屏方法,关闭全屏方法
// 全屏
    setFullScreen() {
      let el = document.documentElement;
      let rfs =
        el.requestFullScreen ||
        el.webkitRequestFullScreen ||
        el.mozRequestFullScreen ||
        el.msRequestFullscreen;
      if (rfs) {
        // typeof rfs != "undefined" && rfs
        rfs.call(el);
      } else if (typeof window.ActiveXObject !== "undefined") {
        // for IE,这里其实就是模拟了按下键盘的F11,使浏览器全屏
        let wscript = new ActiveXObject("WScript.Shell"); //eslint-disable-line
        if (wscript != null) {
          wscript.SendKeys("{F11}");
        }
      }
    },
// 关闭全屏
    exitFullScreen() {
      let el = document;
      let cfs =
        el.cancelFullScreen ||
        el.mozCancelFullScreen ||
        el.msExitFullscreen ||
        el.webkitExitFullscreen ||
        el.exitFullscreen;
      if (cfs) {
        // typeof cfs != "undefined" && cfs
        cfs.call(el);
      } else if (typeof window.ActiveXObject !== "undefined") {
        // for IE,这里和fullScreen相同,模拟按下F11键退出全屏
        let wscript = new ActiveXObject("WScript.Shell"); //eslint-disable-line
        if (wscript != null) {
          wscript.SendKeys("{F11}");
        }
      }
    },
  • 在点击事件中调用全屏,关闭全屏的方法
// 全屏点击事件(这个方法只用来手动操作全屏和关闭全屏)
    fullScreen() {
      var isFull = this.isFullScreen();
      if (isFull) {
        this.exitFullScreen();
      } else {
        this.setFullScreen();
      }
        console.log(this.isFullScreen(),'=====================isFull');
    },

想要用键盘也来监听就用以下代码

// 全屏点击事件
    fullScreen() {
      var isFull = this.isFullScreen();
      if (isFull) {
        this.exitFullScreen();
      } else {
        this.setFullScreen();
      }
      // 监听键盘操作
      window.addEventListener('keydown',(e)=> {
            var isFull = this.isFullScreen()
            e = e || window.event
              if(e.keyCode == 122 && !isFull) {
                  e.preventDefault()
                  this.setFullScreen()
              }
        })
        console.log(this.isFullScreen(),'=====================isFull');
    },

写完js以后html中用if判断全屏,退出全屏的字体展示

<div v-if="this.isFullScreen() == false" style="width: 0.1rem; color: #00cbff">全屏</div>
<div v-if="this.isFullScreen() == true" style="width: 0.1rem; color: #00cbff">退出全屏</div>
Logo

永洪科技,致力于打造全球领先的数据技术厂商,具备从数据应用方案咨询、BI、AIGC智能分析、数字孪生、数据资产、数据治理、数据实施的端到端大数据价值服务能力。

更多推荐