当前位置:首页 > JavaScript

js 实现全屏

2026-01-16 12:15:09JavaScript

使用 requestFullscreen 方法

通过调用元素的 requestFullscreen 方法可以实现全屏。该方法兼容现代浏览器,但不同浏览器可能需要前缀。

const element = document.documentElement; // 全屏整个页面
if (element.requestFullscreen) {
  element.requestFullscreen();
} else if (element.webkitRequestFullscreen) { // Safari
  element.webkitRequestFullscreen();
} else if (element.msRequestFullscreen) { // IE11
  element.msRequestFullscreen();
}

监听全屏状态变化

全屏状态变化时会触发 fullscreenchange 事件,可以通过监听该事件来执行相应操作。

js 实现全屏

document.addEventListener('fullscreenchange', handleFullscreenChange);
document.addEventListener('webkitfullscreenchange', handleFullscreenChange); // Safari
document.addEventListener('MSFullscreenChange', handleFullscreenChange); // IE11

function handleFullscreenChange() {
  if (document.fullscreenElement || document.webkitFullscreenElement || document.msFullscreenElement) {
    console.log('进入全屏');
  } else {
    console.log('退出全屏');
  }
}

退出全屏

使用 exitFullscreen 方法可以退出全屏模式,同样需要考虑浏览器兼容性。

js 实现全屏

if (document.exitFullscreen) {
  document.exitFullscreen();
} else if (document.webkitExitFullscreen) { // Safari
  document.webkitExitFullscreen();
} else if (document.msExitFullscreen) { // IE11
  document.msExitFullscreen();
}

检查当前全屏状态

通过 fullscreenElement 属性可以检查当前是否有元素处于全屏状态。

const fullscreenElement = document.fullscreenElement || document.webkitFullscreenElement || document.msFullscreenElement;
if (fullscreenElement) {
  console.log('当前全屏元素:', fullscreenElement);
} else {
  console.log('未处于全屏状态');
}

全屏样式调整

全屏模式下,CSS 伪类 :fullscreen 可以用于调整全屏元素的样式。

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

兼容性注意事项

不同浏览器对全屏 API 的实现存在差异,建议在实际使用时检测各浏览器前缀以确保兼容性。现代浏览器已逐步标准化,但旧版本可能需要前缀支持。

标签: 全屏js
分享给朋友:

相关文章

vue 实现全屏

vue 实现全屏

Vue 实现全屏功能 在 Vue 中实现全屏功能可以通过浏览器提供的 Fullscreen API 完成。以下是一个完整的实现方案: 安装依赖(可选) 如果需要跨浏览器兼容性更好,可以安装 scr…

js 实现vue

js 实现vue

实现 Vue 的核心功能 在 JavaScript 中实现 Vue 的核心功能需要模拟数据绑定、虚拟 DOM 和响应式系统。以下是一个简化版的实现思路: 响应式系统 通过 Object.defin…

vue实现全屏滚动

vue实现全屏滚动

实现全屏滚动的 Vue 方法 使用第三方库 vue-fullpage.js 安装 vue-fullpage.js: npm install vue-fullpage.js 在 Vue 项目中引入并注…

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 或直接使用 window.location 实现页面跳转,适用于普通跳转或带参数的 URL。 // 方…

js实现分页

js实现分页

实现分页的基本思路 分页功能通常需要处理数据分割、页码生成和用户交互。核心逻辑包括计算总页数、根据当前页截取数据、渲染页码按钮等。 前端分页实现(静态数据) 假设已有全部数据,仅需前端分页展示:…

css3结合js制作

css3结合js制作

CSS3 结合 JavaScript 制作动态效果 CSS3 和 JavaScript 结合可以实现丰富的动态效果,包括动画、交互和响应式设计。以下是几种常见的实现方式: CSS3 动画与 Java…