vue全屏,退出全屏

<template>
    <div class="Quanping">
        <el-button style="position: absolute;top: 0%;right: 0%;" v-if="!fullscreen" @click="fullScreen()">全屏</el-button>
        <el-button style="position: absolute;top: 0%;right: 0%;"  v-else @click="exitFullscreen()">退出全屏</el-button>
     </div>
</template>

<script>
export default {
  data()
  {
    return {
        fullscreen: false //全屏显示true
      }
  },
  created()
  {
    let that = this
    window.onresize = function()
    {
      if (!that.checkFull())
      {
        // 退出全屏后要执行的动作
        that.exitFullscreen()
      }
    }
  },
  mounted()
  {

  },
  methods: {
    fullScreen()
    {
      //全屏
      var full = document.getElementById('AllStatistics')
      this.launchIntoFullscreen(full)
      this.fullscreen = true
    },
    //退出全屏封装
    exitFullscreen()
    {
      if (document.exitFullscreen)
        document.exitFullscreen()
      else if (document.mozCancelFullScreen)
        document.mozCancelFullScreen()
      else if (document.webkitExitFullscreen)
        document.webkitExitFullscreen()
      this.fullscreen = false
    },
    //全屏封装
    launchIntoFullscreen(element)
      {
        if (element.requestFullscreen)
          element.requestFullscreen()
        else if (element.mozRequestFullScreen)
          element.mozRequestFullScreen()
        else if (element.webkitRequestFullscreen)
          element.webkitRequestFullscreen()
        else if (element.msRequestFullscreen)
          element.msRequestFullscreen()
      },
    checkFull()
      {
      //判断浏览器是否处于全屏状态 (需要考虑兼容问题)
      //火狐浏览器//谷歌浏览器及Webkit内核浏览器
        var isFull = document.mozFullScreen || document.fullScreen || document.webkitIsFullScreen || document.webkitRequestFullScreen || document.mozRequestFullScreen || document.msFullscreenEnabled
        if (isFull === undefined)
          isFull = false
        return isFull
      }
  }
}
</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值