以下是一个使用 JavaScript 实现全屏切换的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Fullscreen Toggle</title>
</head>
<body>
<button id="toggleFullscreen">Toggle Fullscreen</button>
<script>
const toggleButton = document.getElementById('toggleFullscreen');
toggleButton.addEventListener('click', () => {
if (!document.fullscreenElement) {
document.documentElement.requestFullscreen().catch(err => {
console.error(`Error attempting to enable full-screen mode: ${err.message} (${err.name})`);
});
} else {
document.exitFullscreen().catch(err => {
console.error(`Error attempting to exit full-screen mode: ${err.message} (${err.name})`);
});
}
});
</script>
</body>
</html>
基础概念:
requestFullscreen
方法用于将指定的元素(通常是 document.documentElement
表示整个文档)请求进入全屏模式。exitFullscreen
方法用于退出全屏模式。优势:
应用场景:
可能遇到的问题及解决方法:
例如:
function enterFullscreen(element) {
if (element.requestFullscreen) {
element.requestFullscreen();
} else if (element.mozRequestFullScreen) { // Firefox
element.mozRequestFullScreen();
} else if (element.webkitRequestFullscreen) { // Chrome, Safari and Opera
element.webkitRequestFullscreen();
} else if (element.msRequestFullscreen) { // IE/Edge
element.msRequestFullscreen();
}
}
function exitFullscreen() {
if (document.exitFullscreen) {
document.exitFullscreen();
} else if (document.mozCancelFullScreen) { // Firefox
document.mozCancelFullScreen();
} else if (document.webkitExitFullscreen) { // Chrome, Safari and Opera
document.webkitExitFullscreen();
} else if (document.msExitFullscreen) { // IE/Edge
document.msExitFullscreen();
}
}
这样可以提高在不同浏览器中的兼容性。
领取专属 10元无门槛券
手把手带您无忧上云