当前位置:首页 > JavaScript

js实现退出全屏

2026-02-03 05:36:10JavaScript

退出全屏的 JavaScript 实现方法

使用 document.exitFullscreen() 方法可以退出全屏模式。该方法适用于现代浏览器,但需注意浏览器兼容性和前缀差异。

if (document.exitFullscreen) {
  document.exitFullscreen();
} else if (document.webkitExitFullscreen) { // Chrome, Safari, Opera
  document.webkitExitFullscreen();
} else if (document.msExitFullscreen) { // IE/Edge
  document.msExitFullscreen();
} else if (document.mozCancelFullScreen) { // Firefox
  document.mozCancelFullScreen();
}

检测全屏状态变化

通过监听 fullscreenchange 事件可以检测全屏状态的变化。不同浏览器可能需要使用带前缀的事件名称。

document.addEventListener('fullscreenchange', handleFullscreenChange);
document.addEventListener('webkitfullscreenchange', handleFullscreenChange);
document.addEventListener('mozfullscreenchange', handleFullscreenChange);
document.addEventListener('MSFullscreenChange', handleFullscreenChange);

function handleFullscreenChange() {
  if (!document.fullscreenElement && 
      !document.webkitFullscreenElement && 
      !document.mozFullScreenElement && 
      !document.msFullscreenElement) {
    console.log('已退出全屏模式');
  }
}

获取当前全屏元素

使用 document.fullscreenElement 或带前缀的属性可以获取当前处于全屏模式的元素。

const fullscreenElement = document.fullscreenElement || 
                         document.webkitFullscreenElement || 
                         document.mozFullScreenElement || 
                         document.msFullscreenElement;

兼容性注意事项

不同浏览器对全屏API的实现存在差异,建议在使用前检查API的可用性。现代浏览器大多已支持标准API,但仍需考虑旧版浏览器的兼容性。

const exitFullscreen = document.exitFullscreen || 
                      document.webkitExitFullscreen || 
                      document.mozCancelFullScreen || 
                      document.msExitFullscreen;

if (exitFullscreen) {
  exitFullscreen.call(document);
} else {
  console.error('当前浏览器不支持全屏API');
}

完整示例代码

以下是一个完整的退出全屏功能的实现示例:

js实现退出全屏

function exitFullScreen() {
  const exitFS = document.exitFullscreen || 
                document.webkitExitFullscreen || 
                document.mozCancelFullScreen || 
                document.msExitFullscreen;

  if (exitFS) {
    exitFS.call(document);
  } else {
    alert('您的浏览器不支持全屏功能');
  }
}

// 绑定按钮点击事件
document.getElementById('exitFullscreenBtn').addEventListener('click', exitFullScreen);

注意事项

  • 退出全屏操作通常需要由用户交互触发,如点击事件
  • 某些浏览器可能在安全限制下阻止程序化退出全屏
  • 移动设备上的全屏行为可能与桌面浏览器不同
  • 建议在使用前测试目标浏览器的兼容性

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

相关文章

js实现

js实现

JavaScript 实现方法 JavaScript 是一种广泛使用的编程语言,适用于网页开发、服务器端编程以及移动应用开发。以下是几种常见的 JavaScript 实现方法: 网页交互功能 使用…

js实现论坛

js实现论坛

实现论坛的基本功能 使用JavaScript实现一个论坛需要结合前端和后端技术。前端可以使用React、Vue或Angular等框架,后端可以选择Node.js配合Express或Koa框架。数据库可…

js实现报表

js实现报表

使用JavaScript实现报表 在JavaScript中实现报表功能可以通过多种方式完成,常见的方法包括使用原生JavaScript、第三方库(如Chart.js、D3.js)或结合后端数据渲染。以…

js实现变形

js实现变形

使用 CSS 和 JavaScript 实现元素变形 在 JavaScript 中实现变形效果通常结合 CSS 的 transform 属性,通过动态修改该属性实现元素的旋转、缩放、倾斜或平移。 基…

js手势实现

js手势实现

手势识别实现方法 在JavaScript中实现手势识别通常涉及监听触摸事件(touchstart、touchmove、touchend)或鼠标事件(mousedown、mousemove、mouseu…

js实现定位

js实现定位

使用Geolocation API获取当前位置 在JavaScript中,可以通过浏览器内置的Geolocation API获取用户的地理位置信息。该API需要用户授权才能访问位置数据。 if (n…