Skip to content

Instantly share code, notes, and snippets.

@jgphilpott
Created September 11, 2023 12:37
Show Gist options
  • Save jgphilpott/d339fa0571cbe0e55a411caca87d2ece to your computer and use it in GitHub Desktop.
Save jgphilpott/d339fa0571cbe0e55a411caca87d2ece to your computer and use it in GitHub Desktop.
Functions for enabling, disabling and checking fullscreen mode.
# Credit: https://stackoverflow.com/a/65943962/1544937
activeFullScreen = ->
Boolean document.isFullScreen or document.fullscreenElement or document.webkitFullscreenElement or document.mozFullScreenElement or document.msFullscreenElement
openFullScreen = ->
if not activeFullScreen()
if document.documentElement.requestFullScreen
document.documentElement.requestFullScreen()
else if document.documentElement.webkitRequestFullScreen
document.documentElement.webkitRequestFullScreen()
else if document.documentElement.mozRequestFullScreen
document.documentElement.mozRequestFullScreen()
else if document.msRequestFullscreen
document.documentElement.msRequestFullscreen()
true
else
false
closeFullScreen = ->
if activeFullScreen()
if document.cancelFullScreen
document.cancelFullScreen()
else if document.webkitCancelFullScreen
document.webkitCancelFullScreen()
else if document.mozCancelFullScreen
document.mozCancelFullScreen()
else if document.msExitFullscreen
document.msExitFullscreen()
true
else
false
// Credit: https://stackoverflow.com/a/65943962/1544937
var activeFullScreen, closeFullScreen, openFullScreen;
activeFullScreen = function() {
return Boolean(document.isFullScreen || document.fullscreenElement || document.webkitFullscreenElement || document.mozFullScreenElement || document.msFullscreenElement);
};
openFullScreen = function() {
if (!activeFullScreen()) {
if (document.documentElement.requestFullScreen) {
document.documentElement.requestFullScreen();
} else if (document.documentElement.webkitRequestFullScreen) {
document.documentElement.webkitRequestFullScreen();
} else if (document.documentElement.mozRequestFullScreen) {
document.documentElement.mozRequestFullScreen();
} else if (document.msRequestFullscreen) {
document.documentElement.msRequestFullscreen();
}
return true;
} else {
return false;
}
};
closeFullScreen = function() {
if (activeFullScreen()) {
if (document.cancelFullScreen) {
document.cancelFullScreen();
} else if (document.webkitCancelFullScreen) {
document.webkitCancelFullScreen();
} else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if (document.msExitFullscreen) {
document.msExitFullscreen();
}
return true;
} else {
return false;
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment