下面都是方法,写在methods
全屏
//全屏
qp(){
let a=document.getElementById("quanp")//指定div
a.requestFullscreen()//全屏
},
退出全屏
//退出全屏
tp(){
document.exitFullscreen();//退出全屏
},
监听退出全屏
fullele() {
return (
document.fullscreenElement ||
document.webkitFullscreenElement ||
document.msFullscreenElement ||
document.mozFullScreenElement ||
null
);
},
//监听退出全屏
keyDown () {
return !!(document.webkitIsFullScreen || this.fullele());
},
监听屏幕变化
在mounted监听退出全屏
//监听退出全屏
let that = this
window.addEventListener('resize', function () {
if (!that.keyDown()) {
that.$alert('考试时间无法退出全屏', '警告', {
confirmButtonText: '确定',
callback: action => {
that.qp()//进入全屏
}
});
}
})
浏览器无法禁用F11的退出全屏功能,只能禁用进入全屏功能,大概是浏览器权限问题,需要用户主动行为才能进入全屏。这里监听屏幕退出全屏后弹出提示框,提示用户不能退出全屏,点击确认再次进入全屏。目前只能做到这样子了。下面是效果图: