HTML5 全屏API讲解

概述

前端工作中,特别是大屏展示需要全屏展示,如果用户不想手动F11让电脑屏幕全屏,那作为开发者如何实现呢?

相关 API 介绍

requestFullscreen 方法

其实 HTML5 为我们提供了requestFullscreen方法,用于使一个元素进入全屏模式,这对于增强用户体验,如统计分析页面需要大屏展示时非常实用。

通常情况下,这个 API 需要在用户交互比(如点击按钮)后才能调用,否则浏览器会报错:Uncaught (in promise) TypeError: Permissions check failed

示例如下:

js 复制代码
doms.container
  .requestFullscreen()
  .then(() => {
    console.log("全屏了");
  })
  .catch((err) => {
    console.log(err.message);
  });

若不是在用户交互后才触发全屏,程序会走catch,捕获错误;若成功,则执行then的回调。

exitFullscreen 方法

exitFullscreen方法用于退出全屏模式,通常通过document.exitFullscreen()

fullscreen 属性

document.fullscreen属性返回当前是否是全屏模式。

fullscreenEnabled属性

一般获取document.fullscreenEnabled的值,用于判断当前浏览器是否支持全屏。

fullscreenElement 属性

document.fullscreenElement属性返回当前全屏的元素或DOM节点,如果不是全屏,则返回null

onfullscreenchange 方法

onfullscreenchange方法可以用于监听进入全屏和退出全屏,其方法在requestFullscreenexitFullscreenthen后面执行。

onfullscreenerror 方法

onfullscreenerror方法与onfullscreenchange相应,用于捕获全屏模式进入和退出的错误异常情况。

相关推荐
AC赳赳老秦8 小时前
外文文献精读:DeepSeek翻译并解析顶会论文核心技术要点
前端·flutter·zookeeper·自动化·rabbitmq·prometheus·deepseek
小宇的天下8 小时前
Calibre 3Dstack --每日一个命令day18【floating_trace】(3-18)
服务器·前端·数据库
毕设源码-钟学长8 小时前
【开题答辩全过程】以 基于web技术的酒店信息管理系统设计与实现-为例,包含答辩的问题和答案
前端
css趣多多8 小时前
this.$watch
前端·javascript·vue.js
干前端9 小时前
Vue3虚拟滚动列表组件进阶:不定高度及原理分析!!!
前端·前端组件
雨季6669 小时前
Flutter 三端应用实战:OpenHarmony “极简文本行数统计器”
开发语言·前端·flutter·ui·交互
MAHATMA玛哈特科技9 小时前
以曲求直:校平技术中的反直觉哲学
前端·数据库·制造·校平机·矫平机·液压矫平机
C澒9 小时前
前端技术核心领域与实践方向
前端·系统架构
写代码的【黑咖啡】9 小时前
Python 中的自然语言处理利器:NLTK
前端·javascript·easyui
Swift社区10 小时前
Nginx 反向代理配置 React 前端与 Python 后端
前端·nginx·react.js