当前位置:首页 > JavaScript

js实现全屏功能

2026-04-07 08:17:34JavaScript

实现全屏功能的JavaScript方法

使用requestFullscreen方法

通过调用元素的requestFullscreen方法实现全屏,兼容现代浏览器:

const element = document.documentElement; // 通常对整个页面全屏
if (element.requestFullscreen) {
    element.requestFullscreen();
} else if (element.webkitRequestFullscreen) { // Safari兼容
    element.webkitRequestFullscreen();
} else if (element.msRequestFullscreen) { // IE兼容
    element.msRequestFullscreen();
}

退出全屏模式

使用document.exitFullscreen方法退出全屏:

js实现全屏功能

if (document.exitFullscreen) {
    document.exitFullscreen();
} else if (document.webkitExitFullscreen) { // Safari兼容
    document.webkitExitFullscreen();
} else if (document.msExitFullscreen) { // IE兼容
    document.msExitFullscreen();
}

检测全屏状态变化

通过监听fullscreenchange事件来响应全屏状态变化:

js实现全屏功能

document.addEventListener('fullscreenchange', handleFullscreenChange);
document.addEventListener('webkitfullscreenchange', handleFullscreenChange); // Safari
document.addEventListener('msfullscreenchange', handleFullscreenChange); // IE

function handleFullscreenChange() {
    const isFullscreen = document.fullscreenElement || 
                        document.webkitFullscreenElement || 
                        document.msFullscreenElement;
    console.log(isFullscreen ? '进入全屏' : '退出全屏');
}

全屏样式调整

在全屏模式下,CSS伪类:fullscreen可定制样式:

:fullscreen {
    background-color: yellow;
}
:-webkit-full-screen {
    background-color: yellow;
}
:-ms-fullscreen {
    background-color: yellow;
}

按钮触发全屏示例

结合HTML按钮控制全屏:

<button id="fullscreenBtn">切换全屏</button>
<script>
    document.getElementById('fullscreenBtn').addEventListener('click', () => {
        if (!document.fullscreenElement) {
            document.documentElement.requestFullscreen();
        } else {
            document.exitFullscreen();
        }
    });
</script>

浏览器兼容性说明

  • 现代浏览器(Chrome/Firefox/Edge)支持标准API
  • Safari需要webkit前缀
  • IE10+需要ms前缀
  • iOS Safari对全屏支持有限,可能需要特殊处理

标签: 全屏功能
分享给朋友:

相关文章

vue实现名字查找功能

vue实现名字查找功能

Vue 实现名字查找功能 在 Vue 中实现名字查找功能,可以通过以下方法完成。这里假设有一个名字列表,需要根据用户输入的关键词进行筛选。 数据准备 在 Vue 的 data 中定义名字列表和搜索关…

vue实现按钮实现点击功能

vue实现按钮实现点击功能

Vue 按钮点击功能实现 在 Vue 中实现按钮点击功能可以通过多种方式完成,以下是常见的实现方法: 方法一:使用 v-on 指令 通过 v-on:click 或简写 @click 绑定事件:…

vue实现拨号功能

vue实现拨号功能

Vue 实现拨号功能 使用 tel: 协议实现基础拨号 在 Vue 中可以通过 HTML 的 <a> 标签结合 tel: 协议实现拨号功能。这种方式适用于移动端浏览器,点击后会直接调用系统…

vue实现截图功能

vue实现截图功能

Vue实现截图功能的方法 使用html2canvas库 html2canvas是一个流行的JavaScript库,可以将HTML元素转换为Canvas,进而生成图片。在Vue项目中安装html2can…

js实现复制功能实现

js实现复制功能实现

使用document.execCommand方法(传统方式,已逐渐被弃用) 传统方式通过document.execCommand('copy')实现复制功能,需先选中文本。以下是一个完整示例: fu…

Vue 实现登出功能

Vue 实现登出功能

实现登出功能的方法 在Vue中实现登出功能通常涉及清除用户认证信息、重置应用状态并跳转到登录页面。以下是几种常见的实现方式: 清除本地存储的token localStorage.removeIte…