vue js實現全屏得兩種辦法


1.原生js實現

<template>
  <div>
    <div style="height:500px;width:500px; background:pink;" id="con_lf_top_div"  @click="screen">
    </div>
  </div>
</template>
<script>
export default {
  name: "home",
  data() {
    return {
      //默認不全屏
      fullscreen:false,
    };
  },

  methods: {
    screen(){
        // let element = document.documentElement;//設置后就是我們平時的整個頁面全屏效果
        let element = document.getElementById('con_lf_top_div');//設置后就是   id==con_lf_top_div 的容器全屏
          if (this.fullscreen) {
            if (document.exitFullscreen) {
              document.exitFullscreen();
            } else if (document.webkitCancelFullScreen) {
              document.webkitCancelFullScreen();
            } else if (document.mozCancelFullScreen) {
              document.mozCancelFullScreen();
            } else if (document.msExitFullscreen) {
              document.msExitFullscreen();
            }
          } else {
            if (element.requestFullscreen) {
              element.requestFullscreen();
            } else if (element.webkitRequestFullScreen) {
              element.webkitRequestFullScreen();
            } else if (element.mozRequestFullScreen) {
              element.mozRequestFullScreen();
            } else if (element.msRequestFullscreen) {
             element.msRequestFullscreen();
            }
          }
          this.fullscreen = !this.fullscreen;
    }
  }
};
</script>
 
 
2.插件 screenfull實現
npm install screenfull@4.2.0 --save
 
<template>
  <div>
    <a-button type="primary" @click="screen">全屏</a-button>
  </div>
</template>

<script>
import screenfull from "screenfull";
export default {
  name: "home",
  data() {
    return {
      //默認不全屏
      isFullscreen: false
    };
  },

  methods: {
    screen() {
      // 如果不允許進入全屏,發出不允許提示
      if (!screenfull.enabled) {
        this.$message("您的瀏覽器不能全屏");
        return false;
      }
      screenfull.toggle();
      this.$message.success("全屏啦");
    }
  }
};
</script>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM