JS全屏操作_实现全屏和退出全屏

更新日期: 2021-11-26阅读量: 406标签: 全屏

实现效果:

点击 “全屏显示”,网站全屏,显示 “退出全屏” 按钮;反向操作同理。并且监听浏览器全屏事件,执行相应的操作。

进入全屏

function launchFullscreen(element) {
  if (element.requestFullscreen) {
    element.requestFullscreen()
  } else if (element.mozRequestFullScreen) {
    element.mozRequestFullScreen()
  } else if (element.msRequestFullscreen) {
    element.msRequestFullscreen()
  } else if (element.webkitRequestFullscreen) {
    element.webkitRequestFullScreen()
  }
}
launchFullscreen(document.documentElement)
launchFullscreen(document.getElementById("id")) //某个元素进入全屏

退出全屏

function exitFullscreen() {
  if (document.exitFullscreen) {
    document.exitFullscreen()
  } else if (document.msExitFullscreen) {
    document.msExitFullscreen()
  } else if (document.mozCancelFullScreen) {
    document.mozCancelFullScreen()
  } else if (document.webkitExitFullscreen) {
    document.webkitExitFullscreen()
  }
}
exitFullscreen()

全屏事件

一:监听进入全屏

document.addEventListener("fullscreenchange", function (e) {
  if (document.fullscreenElement) {
    console.log('进入全屏')
  } else {
    console.log('退出全屏')
  }
})

如果要考虑兼容性:

function fullFun(){
let fullscreenElement = document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement;
if (fullscreenElement ) {
console.log('进入全屏')
} else {
console.log('退出全屏')
}
}
document.addEventListener('fullscreenchange', fullFun);
document.addEventListener('webkitfullscreenchange', fullFun);
document.addEventListener('mozfullscreenchange', fullFun);
document.addEventListener('MSFullscreenChange', fullFun);

fullscreenchange事件:浏览器进入或离开全屏时触发。

二:监听无法进入全屏

function fullErr(){
console.log("浏览器无法进入全屏时触发");
}
document.addEventListener('fullscreenerror', fullErr);
document.addEventListener('webkitfullscreenerror', fullErr);
document.addEventListener('mozfullscreenerror', fullErr);
document.addEventListener('MSFullscreenError', fullErr);

fullscreenerror事件:浏览器无法进入全屏时触发,可能是技术原因,也可能是用户拒绝。

全屏属性

一、fullscreenElement

fullscreenElement属性返回正处于全屏状态的Element节点,如果当前没有节点处于全屏状态,则返回null。

let fullscreenElement = document.fullscreenElement    || document.mozFullScreenElement || document.webkitFullscreenElement;

二、fullscreenEnabled

fullscreenEnabled属性返回一个布尔值,表示当前文档是否可以切换到全屏状态。主要用于:进入全屏操作前判断浏览器是否支持全屏,不支持给出提示。

let fullscreenEnabled = document.fullscreenEnabled ||
document.mozFullScreenEnabled ||
document.webkitFullscreenEnabled ||
document.msFullscreenEnabled;
if (fullscreenEnabled) {
console.log('浏览器支持全屏');
} else {
console.log('浏览器当前不能全屏');
}

全屏状态下的css

全屏状态下,大多数浏览器的css支持:full-screen伪类,只有IE11支持:fullscreen伪类。使用这个伪类,可以对全屏状态设置单独的CSS属性。

:-webkit-full-screen {
/* properties */
}

:-moz-full-screen {
/* properties */
}

:-ms-fullscreen {
/* properties */
}

:full-screen { /*pre-spec */
/* properties */
}

:fullscreen { /* spec */
/* properties */
}

/* deeper elements */
video:-webkit-full-screen {
width: 100%;
height: 100%;
}


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: https://www.fly63.com/article/detial/10853

css如何让图片全屏显示?

一张清晰漂亮的背景图片能给网页加分不少,我们既不想图片因为不同分辨率图片变形,也不希望当在大屏的情况下,背景有一块露白,简而言之,就是实现能自适应屏幕大小又不会变形的背景大图,而且背景图片不会随着滚动条滚动而滚动。

js实现全屏,退出全屏

这篇文章主要介绍了JavaScript控制全屏,监听退出全屏。以及ie低版本的全屏,退出全屏都这个方法,ie调用ActiveX控件,需要在ie浏览器安全设置里面把 未标记为可安全执行脚本的ActiveX控件初始化并执行脚本设置为启用

JS实现浏览器全屏及退出全屏的方法

我们知道,浏览器全屏通常按快捷键F11。那么如何通过JS前端实现让浏览器全屏、退出全屏? 在进行进入全屏和退出全屏的操作,需要的朋友可以参考下

fullPage.js全屏滚动插件API/方法

fullPage.js 是一个基于 jQuery 的插件,它能够很方便、很轻松的制作出全屏网站。 主要功能有:支持鼠标滚动、支持前进后退和键盘控制...

用 ES6 写全屏滚动插件

这篇文章将介绍如何使用原生 JS (主要使用 ES6 语法)实现全屏滚动插件,兼容 IE 10+、手机触屏,Mac 触摸板优化,支持自定义页面动画,压缩后 gzip 文件只有 2k。

各种浏览器全屏模式的方法、属性和事件介绍

js让浏览器全屏模式的方法launchFullscreen,HTML 5中的full screen,目前可以在除IE和opera外的浏览器中使用 ,有的时候用来做全屏API,游戏呀,等都很有用。浏览器全屏模式的启动函数requestFullscreen仍然需要附带各浏览器的js方言前缀

h5页面通过js实现页面全屏显示,以及退出全屏的实现方法

这篇文章主要讲述通过js来实现html页面的全屏显示,以及退出全屏展示的方法。分享给大家查考,具体代码实现如下

JS全屏代码,解决PDF.js在iframe中部分浏览器全屏功能错误

页面中使用iframe嵌入PDF.js的viewer.html时,部分浏览器全屏功能错误; 问题出现的浏览器主要有:edge(win10自带),火狐(按钮被屏蔽);解决方案:

用JavaScript使网页全屏显示_如何使网页全屏显示

写前端网页或者做前端小游戏的时候,为了提高用户体验,需要请求网页全屏显示(这点对于手机端的页游很重要),这个需求可以通过JavaScript实现

typescript 实现浏览器全屏

最近后台项目需要一个全屏的按钮, github了下, 发现都仅仅支持开启全屏, 而没有切换、监听全屏状态等功能, 首先我发现ts自带的声明中, 对webkit或moz开头的这种api并没有声明类型

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!