video 满屏显示_video 全屏,播放,隐藏控件。

本文详细介绍了如何实现video元素的全屏显示,包括进入全屏、退出全屏的函数,以及检查全屏状态和全屏能力的方法。同时提到了全屏操作中的注意事项,如需用户触发、页面跳转前退出全屏等。此外,还讨论了如何通过CSS隐藏video控件。
摘要由CSDN通过智能技术生成

requestFullscreen全屏具体实现

1.进入全屏

function full(ele) {

if (ele.requestFullscreen) {

ele.requestFullscreen();

} else if (ele.mozRequestFullScreen) {

ele.mozRequestFullScreen();

} else if (ele.webkitRequestFullscreen) {

ele.webkitRequestFullscreen();

} else if (ele.msRequestFullscreen) {

ele.msRequestFullscreen();

}

}

ele:要全屏的元素,可以是document.body也可以是某一个div

思路:

1.判断该浏览器是否具有requestFullscreen方法

2.有,则直接执行ele.requestFullscreen();没有则做浏览器兼容判断。

2.exitFullScreen退出全屏

function exitFullscreen() {

if(document.exitFullScreen) {

document.exitFullScreen();

} else if(document.mozCancelFullScreen) {

document.mozCancelFullScreen();

} else if(document.webkitExitFullscreen) {

document.webkitExitFullscreen();

} else if(document.msExitFullscreen) {

document.msExitFullscreen();

}

}

退出全屏直接使用document调用exitFullscreen方法即可。

3.获取当前全屏的节点

function getFullscreenElement() {

return (

document.fullscreenElement ||

document.mozFullScreenElement ||

document.msFullScreenElement ||

document.webkitFullscreenElement||null

);

}

document.fullscreenElement():获取当前全屏的元素。

假设id为div1的Element当前为全屏状态则 document.querySelector("#div1")===document.fullscreenElement

4.判断当前是否全屏

function isFullScreen() {

return !! (

document.fullscreen ||

document.mozFullScreen ||

document.webkitIsFullScreen ||

document.webkitFullScreen ||

document.msFullScreen

);

}

5.判断当前文档是否能切换到全屏

function isFullscreenEnabled() {

return (

document.fullscreenEnabled ||

document.mozFullScreenEnabled ||

document.webkitFullscreenEnabled ||

document.msFullscreenEnabled

);

}

注意事项:

1.document下没有requestFullscreen

2.requestFullscreen方法只能由用户触发,比如:在onload事件中不能触发

3.页面跳转需先退出全屏

4.进入全屏的元素,将脱离其父元素,所以可能导致之前某些css的失效

解决方案:使用 :full-screen伪类 为元素添加全屏时的样式(使用时为了兼容注意添加-webkit、-moz或-ms前缀)

5.一个元素A全屏后,其子元素要再全屏,需先让元素A退出全屏

单击播放/暂停。

function onDocumentClick(event) {

clearTimeout(clickTimeId);

//执行延时

clickTimeId = setTimeout(function() {

//此处为单击事件要执行的代码

if(video.paused){

video.play();

}else{

video.pause();

}

}, 250);

}

双击全屏/解除全屏

function onDocumenDblClick(event) {

clearTimeout(clickTimeId);

console.log("鼠标双击");

console.log(isFullScreen())

if(isFullScreen()){

exitFullscreen()

}else{

full(video)

}

}

隐藏vedio控件 css :

video::-webkit-media-controls{

display:none !important;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值