Skip to content

Instantly share code, notes, and snippets.

@molily
Last active August 29, 2015 13:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save molily/9623596 to your computer and use it in GitHub Desktop.
Save molily/9623596 to your computer and use it in GitHub Desktop.
My Attempt on the Fullscreen API
# https://dvcs.w3.org/hg/fullscreen/raw-file/tip/Overview.html
# http://msdn.microsoft.com/en-us/library/ie/dn265028(v=vs.85).aspx
# https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Using_full_screen_mode
# https://developer.apple.com/library/safari/documentation/WebKit/Reference/ElementClassRef/Element/Element.html#//apple_ref/javascript/instm/Element/webkitRequestFullScreen
# http://updates.html5rocks.com/2011/10/Let-Your-Content-Do-the-Talking-Fullscreen-API
# See also https://github.com/sindresorhus/screenfull.js for a more complete library.
doc = document
module.exports =
requestFullscreen: (el) ->
if el.requestFullscreen
el.requestFullscreen()
else if el.mozRequestFullScreen
el.mozRequestFullScreen()
else if el.webkitRequestFullscreen
el.webkitRequestFullscreen()
else if el.webkitRequestFullScreen
el.webkitRequestFullScreen()
else if el.msRequestFullscreen
el.msRequestFullscreen()
return
exitFullscreen: ->
if doc.exitFullscreen
doc.exitFullscreen()
else if doc.mozCancelFullScreen
doc.mozCancelFullScreen()
else if doc.webkitExitFullscreen
doc.webkitExitFullscreen()
else if doc.webkitCancelFullScreen
doc.webkitCancelFullScreen()
else if doc.msExitFullscreen
doc.msExitFullscreen()
return
isFullScreen: ->
doc.fullScreenElement or
doc.mozFullScreenElement or
doc.webkitFullscreenElement or
doc.webkitCurrentFullScreenElement or
doc.msFullscreenElement
toggleFullscreen: (el) ->
if @isFullScreen()
@exitFullscreen()
else
@requestFullscreen el
return
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment