当前位置: 首页 > news >正文

全屏与退出全屏功能

全屏与退出全屏功能

📄 Fullscreen API 使用说明

通过浏览器提供的 Fullscreen API,你可以实现在任意 HTML 元素上的全屏展示与退出全屏效果,适用于视频播放器、看图模式、报表展示等场景。


🧩 功能说明

  • 支持进入全屏
  • 支持退出全屏
  • 支持检测当前是否处于全屏状态
  • 兼容多浏览器前缀
  • 可封装为 Vue / React 组件

📦 使用示例(原生 JavaScript)

进入全屏

function enterFullscreen(el = document.documentElement) {if (el.requestFullscreen) {el.requestFullscreen();} else if (el.webkitRequestFullscreen) {el.webkitRequestFullscreen();} else if (el.mozRequestFullScreen) {el.mozRequestFullScreen();} else if (el.msRequestFullscreen) {el.msRequestFullscreen();}
}

退出全屏

function exitFullscreen() {if (document.exitFullscreen) {document.exitFullscreen();} else if (document.webkitExitFullscreen) {document.webkitExitFullscreen();} else if (document.mozCancelFullScreen) {document.mozCancelFullScreen();} else if (document.msExitFullscreen) {document.msExitFullscreen();}
}

判断是否全屏

function isFullscreen() {return document.fullscreenElement || document.webkitFullscreenElement || document.mozFullScreenElement || document.msFullscreenElement;
}

切换全屏

function toggleFullscreen() {if (isFullscreen()) {exitFullscreen();} else {enterFullscreen();}
}

🚀 Vue 3 组合式封装

import { ref } from 'vue';const isFull = ref(false);function toggleFullscreen(el: HTMLElement = document.documentElement) {if (!isFull.value) {el.requestFullscreen?.();isFull.value = true;} else {document.exitFullscreen?.();isFull.value = false;}
}export { toggleFullscreen, isFull };

📡 监听全屏变化(可选)

document.addEventListener('fullscreenchange', () => {console.log('全屏状态变更:', !!document.fullscreenElement);
});

http://www.wxhsa.cn/company.asp?id=3251

相关文章:

  • 二十多年.NET老兵重返技术博客
  • 5月杂题
  • uv,下一代Python包管理工具
  • 阅读 |《虚空》观后感以及一些想法——万物简史
  • Python进阶必看:深入解析yield的强大功能
  • polyglot,一个有趣的 Python 库!
  • 个人介绍与博客初建
  • PySimpleGUI,一个神奇的 Python 库!
  • c++ 的拷贝构造函数
  • 变异
  • 【笔记】类欧几里得算法
  • AQS的一些思考
  • DearPyGui-最强大的一款Python GUI工具
  • 2 模型评估与选择
  • TY-290ES计算器屏幕逆向
  • CF1559E
  • 笔记 哈希
  • 题解:CF566A Matching Names
  • Tarjan 求连通性相关
  • 暑假学习笔记
  • qoj #8557. Goldberg Machine 题解
  • centos7云主机磁盘清理过程纪要
  • 『随笔』我的唱歌练习史
  • 2025浙江省信息通信业职业技能竞赛-数据安全管理员竞赛-决赛wp
  • Java基础核心问题解析
  • 2025年浙江省信息通信业职业技能竞赛-数据安全管理员竞赛-初赛WriteUp
  • 九三阅兵实时记录+次日补
  • 铸网-2025”山东省工业互联网网络安全职业技能竞赛wp(职工组)
  • 视洞R33定制版改造自制IPC网络摄像头(可rtsp可web)
  • 二十一、流水线的冒险与处理