检查浏览器是否支持Fullscreen API
// 检查是否支持全屏模式
function isFullScreen() {
return document.fullscreenElement ||
document.webkitFullscreenElement ||
document.mozFullScreenElement ||
document.msFullscreenElement;
}
全屏模式
获取Element
节点,然后使用requestFullscreen
方法,可以使得这个节点全屏,全屏模式的具体实现可能因浏览器而异,所以要做不同浏览器处理
function requestFullScreen(element) {
if (element.requestFullscreen) {
element.requestFullscreen();
} else if (element.mozRequestFullScreen) {
element.mozRequestFullScreen();
} else if (element.webkitRequestFullscreen) {
element.webkitRequestFullscreen();
} else if (element.msRequestFullscreen) {
element.msRequestFullscreen();
}
}
退出全屏
退出全屏模式可以通过调用document.exitFullscreen()
方法实现。这个方法会尝试让当前处于全屏模式的元素退出全屏。用户手动按下ESC键,也可以退出全屏键。
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();
}
}
为按钮添加点击事件,实现点击后页面全屏
<button id="fullscreen-btn">切换全屏</button>
document.getElementById('fullscreen-btn').addEventListener('click', function() {
var elem = document.documentElement; // 获取html元素
if (!isFullScreen()) {
requestFullScreen(elem);
} else {
exitFullScreen();
}
});