diff options
Diffstat (limited to 'hugo/js/jquery/jquery.fullscreen.js')
| -rw-r--r-- | hugo/js/jquery/jquery.fullscreen.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/hugo/js/jquery/jquery.fullscreen.js b/hugo/js/jquery/jquery.fullscreen.js new file mode 100644 index 0000000..248e8ff --- /dev/null +++ b/hugo/js/jquery/jquery.fullscreen.js @@ -0,0 +1,60 @@ +// jQuery.FullScreen plugin + +// Triple-licensed: Public Domain, MIT and WTFPL license - share and enjoy! + +(function($) { + function isFullScreen() { + return document[!prefix ? 'fullScreen' : + 'webkit' === prefix ? 'webkitIsFullScreen' : + prefix + 'FullScreen']; + } + function cancelFullScreen() { + return document[prefix ? prefix + 'CancelFullScreen' + : 'cancelFullScreen'](); + } + + var supported = typeof document.cancelFullScreen !== 'undefined' + , prefixes = ['webkit', 'moz', 'o', 'ms', 'khtml'] + , prefix = '' + , noop = function() {} + , i + ; + + if (!supported) { + for (i = 0; prefix = prefixes[i]; i++) { + if (typeof document[prefix + 'CancelFullScreen'] !== 'undefined') { + supported = true; + break; + } + } + } + + if (supported) { + $.fn.requestFullScreen = function() { + return this.each(function() { + return this[prefix ? prefix + 'RequestFullScreen' + : 'requestFullScreen'](); + }); + }; + $.fn.fullScreenChange = function(fn) { + var ar = [prefix + 'fullscreenchange'].concat([].slice.call(arguments, 0)) + , $e = $(this); + return $e.bind.apply($e, ar); + }; + $.FullScreen = + { isFullScreen: isFullScreen + , cancelFullScreen: cancelFullScreen + , prefix: prefix + , supported: supported + }; + } + else { + $.fn.requestFullScreen = $.fn.fullScreenChange = noop; + $.FullScreen = + { isFullScreen: function() { return false; } + , cancelFullScreen: noop + , prefix: prefix + , supported: supported + }; + } +})(jQuery); |
