screenfull全屏显示
创始人
2024-06-02 06:56:07
0

浏览器本身提供了对screenfull的API支持,但是需要考虑浏览的兼容性。如果跨浏览器使用 JavaScript 全屏 API,可以使用screenfull插件,该插件已对兼容性做了处理。

1、screenfull原生API

  • 全局全屏
// 全局全屏
const screen = () => {let element = document.documentElement;// 不全屏是null,返回false,let isFull= document.fullscreenElement === null ? false : true;// 全屏状态切换if (isFull) {// 退出全屏if (document.exitFullscreen) {document.exitFullscreen();}} else {// 全屏if (element.requestFullscreen) {element.requestFullscreen();}}  
};
  • 指定内容全屏
// 局部全屏
const partScreen = () => {/* 获取()元素以全屏显示页面 */const full = document.getElementById('mainContent');let isFull = document.fullscreenElement === null ? false : true;if (!isFull) {if (full && full.requestFullscreen) {full.requestFullscreen();}} else {if (document.exitFullscreen) {document.exitFullscreen();}}
};

如果考虑浏览器兼容性的话,完整的功能应该是

const openFullscreen = () => {/* 获取()元素以全屏显示页面 */const full = document.getElementById('mainContent');if (full.RequestFullScreen) {full.RequestFullscreen();} else if (full.mozRequestFullScreen) {//兼容Firefoxfull.mozRequestFullScreen();} else if (full.webkitRequestFullScreen) {//兼容Chrome, Safari and Opera等full.webkitRequestFullScreen();} else if (full.msRequestFullscreen) {//兼容IE/Edgefull.msRequestFullscreen();}
};const exitFullscreen = () => {if (document.exitFullscreen) {document.exitFullscreen();} else if (document.mozCancelFullScreen) {//兼容Firefoxdocument.mozCancelFullScreen();} else if (document.webkitExitFullscreen) {//兼容Chrome, Safari and Opera等document.webkitExitFullscreen();} else if (document.msExitFullscreen) {//兼容IE/Edgedocument.msExitFullscreen();}
};

2、screenfull插件

插件文档

安装

npm i screenfull

使用

import screenfull from 'screenfull';
// 使用screenfull插件
let isFullscreen = ref(false);
const plugin = () => {const element = document.getElementById('mainContent'); if (screenfull.isEnabled && !screenfull.isFullscreen) {screenfull.request(element);}isFullscreen.value = !screenfull.isFullscreen;screenfull.toggle();
};

浏览器支持情况

浏览器支持查看

参数

  • isEnabled
    返回一个布尔值是否允许您进入全屏
  • isFullscreen
    返回一个布尔值是否全屏处于活动状态
  • toggle(element, options?)
    如果不活动则请求全屏,否则退出。
    接受一个 DOM 元素和FullscreenOptions.
    返回在元素进入/退出全屏后解决的承诺

相关内容

热门资讯

苹果表有安卓系统时间,时间同步... 你有没有发现,最近苹果表也开始支持安卓系统了?没错,就是那个一直以封闭著称的苹果,竟然也开始拥抱安卓...
原生安卓系统裁剪图片,原生安卓... 你有没有发现,用原生安卓系统拍照,有时候拍出来的照片分辨率超高,但就是有点大,想裁剪却不知道怎么操作...
安卓系统蓝牙开关APP,安卓系... 你有没有遇到过这种情况:手机里的安卓系统蓝牙开关总是让人摸不着头脑?有时候想开蓝牙,却找不到开关在哪...
安卓系统能登录ios系统王者吗... 你有没有想过,安卓系的手机能不能登录iOS系统的王者荣耀呢?这可是个让人好奇不已的问题哦!毕竟,两个...
苹果和安卓系统文件怎么,系统架... 你有没有想过,为什么你的手机里那么多乱糟糟的文件,有时候找起来还真是头疼?今天,就让我来给你好好捋一...
安卓系统9.0稳定版,深度解析... 你知道吗?最近安卓系统9.0稳定版可是火得一塌糊涂呢!这款系统不仅带来了全新的功能和优化,还让无数安...
安卓系统目录结构网盘,安卓系统... 你有没有想过,你的安卓手机里那些看似杂乱无章的文件,其实背后隐藏着一个有序的目录结构呢?今天,就让我...
安卓系统在哪里买专辑,专辑购买... 你有没有想过,手机里那熟悉的安卓系统,竟然也能帮你买到心仪的专辑呢?没错,就是那个让你随时随地畅享音...
鸿蒙系统离开了安卓吗,迈向独立... 你有没有听说最近鸿蒙系统的大动作?没错,就是那个让安卓和iOS都紧张起来的操作系统。今天,咱们就来聊...
安卓系统耗电本地视频,本地视频... 手机电量总是不够用,是不是你也和我一样,对安卓系统的耗电问题头疼不已?尤其是当你想看个本地视频放松一...
手机安卓最好的系统是,揭秘最佳... 你有没有想过,为什么你的手机用起来有时候那么顺畅,有时候又那么卡顿呢?这背后其实和手机系统有着千丝万...
怎么拍镜像照片安卓系统,如何拍... 摄影爱好者们,你是否曾对那些在水中倒影中捕捉到的美丽瞬间感到着迷?想要在安卓手机上也能轻松拍出这样的...
安卓7运行xp系统,兼容性与性... 你有没有想过,把一个古老的操作系统装在现代的安卓设备上?想象安卓7系统下运行Windows XP,这...
戴尔安卓系统升级,解锁无限可能 你有没有发现,你的戴尔安卓设备最近是不是变得有点儿不一样了?没错,就是那个戴尔安卓系统升级,它就像一...
安卓系统怎么变苹果主题,打造苹... 你有没有想过,把你的安卓手机变成苹果风格的呢?想象那光滑的界面、简洁的图标,是不是瞬间觉得高大上了?...
系统进程有病毒吗安卓,安卓安全... 你有没有想过,你的安卓手机里那些忙碌的系统进程,它们会不会突然生病了呢?没错,我说的就是病毒!今天,...
编程安卓系统和鸿蒙主题,跨平台... 你有没有想过,手机的世界里,除了苹果的iOS和安卓的操作系统,还有个神秘的鸿蒙系统?今天,咱们就来聊...
哪个安卓机系统好用,探索安卓系... 你有没有想过,手机里的安卓系统就像是个大厨,不同的系统就像不同的烹饪手法,有的让你吃得津津有味,有的...
安卓如何控制苹果系统,从安卓到... 你知道吗?在这个科技飞速发展的时代,安卓和苹果两大操作系统之间的较量从未停歇。虽然它们各自有着忠实的...
安卓原生系统文件夹,安卓原生系... 你有没有发现,每次打开安卓手机,里面那些文件夹就像是一个个神秘的宝箱,里面藏着各种各样的宝贝?今天,...