screenfull全屏、退出全屏、指定元素全屏的使用步骤

文章目录

1.下载插件
建议下载指定版本5.1.0,不然可能有一个报错

复制代码
npm install --save screenfull@5.1.0

2.页面引入

复制代码
import screenfull from "screenfull"

页面全屏

3.在标签上绑定点击事件

复制代码
<div @click="handleFull">全屏/退出全屏</div>

4.在methods中写方法代码

复制代码
handleFull() {
  if (screenfull.isEnabled) {
    // 加个判断浏览器是否支持全屏
    screenfull.toggle(); // 切换全屏状态
  } else {
    console.log("您的浏览器不支持全屏");
  }
}

页面全屏

5.在标签上绑定点击事件

复制代码
<div id="demo" @click="container">指定元素全屏</div>

6.在methods中写方法代码

复制代码
container() {
  const element = document.getElementById("demo"); // 指定全屏元素
  if (screenfull.isEnabled) {
    screenfull.request(element);
    this.elementFull = !this.elementFull; // 判断状态 决定是全屏还是退出全屏
    if (this.elementFull) {
      screenfull.toggle(); //全屏/退出全屏切换
    }
  }
}

完整代码

复制代码
<template>
  <div class="parentBox">
    <div @click="handleFull" class="btn">全屏/退出全屏</div>
    <div id="demo" @click="container">指定元素全屏</div>
  </div>
</template>
<script>
import screenfull from "screenfull";
export default {
  data() {
    return {
      elementFull: false,
    };
  },
  methods: {
    handleFull() {
      if (screenfull.isEnabled) {
        // 加个判断浏览器是否支持全屏
        screenfull.toggle(); // 切换全屏状态
      } else {
        console.log("您的浏览器不支持全屏");
      }
    },
    container() {
      const element = document.getElementById("demo"); // 指定全屏元素
      if (screenfull.isEnabled) {
        screenfull.request(element);
        this.elementFull = !this.elementFull; // 判断状态 决定是全屏还是退出全屏
        if (this.elementFull) {
          screenfull.toggle(); //全屏/退出全屏切换
        }
      }
    },
  },
};
</script>
<style scoped lang="scss">
.btn {
  background-color: gray;
  width: 200px;
}
#demo {
  background-color: aqua;
  width: 200px;
  height: 200px;
}
</style>
相关推荐
寻星探路26 分钟前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly2024062 小时前
Bootstrap 警告框
开发语言
2601_949146533 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧3 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX3 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb01033 小时前
C++课后习题训练记录Day98
开发语言·c++
猫头虎4 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
Moment4 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
YUJIANYUE4 小时前
PHP纹路验证码
开发语言·php
爱敲代码的小鱼4 小时前
AJAX(异步交互的技术来实现从服务端中获取数据):
前端·javascript·ajax