<div id="videobox"></div>
進入全屏事件:
launchFullscreen(element) {
//此方法不可以在異步任務中執行,否則火狐無法全屏
if(element.requestFullscreen) {
element.requestFullscreen();
} else if(element.mozRequestFullScreen) {
element.mozRequestFullScreen();
} else if(element.msRequestFullscreen) {
element.msRequestFullscreen();
} else if(element.oRequestFullscreen) {
element.oRequestFullscreen();
} else if(element.webkitRequestFullscreen) {
element.webkitRequestFullScreen();
} else {
var docHtml = document.documentElement;
var docBody = document.body;
var videobox = document.getElementById('videobox');
var width = window.screen.width;
var height = window.screen.height;
var cssText = "width:" + width + ";height:" + height + ";overflow:hidden;";
docHtml.style.cssText = cssText;
docBody.style.cssText = cssText;
document.IsFullScreen = true;
}
}
退出全屏:
exitFullscreen() {
if(document.exitFullscreen) {
document.exitFullscreen();
} else if(document.msExitFullscreen) {
document.msExitFullscreen();
} else if(document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if(document.oRequestFullscreen) {
document.oCancelFullScreen();
} else if(document.webkitExitFullscreen) {
document.webkitExitFullscreen();
} else {
var docHtml = document.documentElement;
var docBody = document.body;
var videobox = document.getElementById('videobox');
docHtml.style.cssText = "";
docBody.style.cssText = "";
videobox.style.cssText = "";
document.IsFullScreen = false;
}
}
判断是否处于全屏状态:
checkFull() {
var isFull = document.fullscreenEnabled || window.fullScreen || document.webkitIsFullScreen || document.msFullscreenEnabled;
if(isFull === undefined) isFull = false;
return isFull;
}
window.onresize = function(){
if(!vm.checkFull()){
vm.exitFull();//要执行的函数
}
}
点击进入全屏
fullScreen() {
var width = window.screen.width;
var height = window.screen.height;
var video = $('#backVideo')[0];
$("#backVideo").css({
'width': width,
'height': height
});//在进入全屏时改变Dom的宽高
launchFullscreen(video);//开启全屏
}
点击退出全屏
exitFull() {
var video = $('#backVideo')[0];
$("#backVideo").css({
'width': videoStyle.width,//在点击进入全屏前需记录原先的宽高,这里赋值后再退出全屏
'height': videoStyle.height
});
exitFullscreen();//退出全屏
}