mirror of
https://github.com/nextcloud/server.git
synced 2026-04-22 14:50:17 -04:00
adding jquery-visibility
https://github.com/mathiasbynens/jquery-visibility MIT and GPL licensed
This commit is contained in:
parent
23896a7290
commit
362860c5b5
1 changed files with 32 additions and 0 deletions
32
apps/files/js/jquery-visibility.js
vendored
Normal file
32
apps/files/js/jquery-visibility.js
vendored
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
/*! http://mths.be/visibility v1.0.5 by @mathias */
|
||||
(function (window, document, $, undefined) {
|
||||
|
||||
var prefix,
|
||||
property,
|
||||
// In Opera, `'onfocusin' in document == true`, hence the extra `hasFocus` check to detect IE-like behavior
|
||||
eventName = 'onfocusin' in document && 'hasFocus' in document ? 'focusin focusout' : 'focus blur',
|
||||
prefixes = ['', 'moz', 'ms', 'o', 'webkit'],
|
||||
$support = $.support,
|
||||
$event = $.event;
|
||||
|
||||
while ((property = prefix = prefixes.pop()) != undefined) {
|
||||
property = (prefix ? prefix + 'H' : 'h') + 'idden';
|
||||
if ($support.pageVisibility = typeof document[property] == 'boolean') {
|
||||
eventName = prefix + 'visibilitychange';
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$(/blur$/.test(eventName) ? window : document).on(eventName, function (event) {
|
||||
var type = event.type,
|
||||
originalEvent = event.originalEvent,
|
||||
toElement = originalEvent.toElement;
|
||||
// If it’s a `{focusin,focusout}` event (IE), `fromElement` and `toElement` should both be `null` or `undefined`;
|
||||
// else, the page visibility hasn’t changed, but the user just clicked somewhere in the doc.
|
||||
// In IE9, we need to check the `relatedTarget` property instead.
|
||||
if (!/^focus./.test(type) || (toElement == undefined && originalEvent.fromElement == undefined && originalEvent.relatedTarget == undefined)) {
|
||||
$event.trigger((property && document[property] || /^(?:blur|focusout)$/.test(type) ? 'hide' : 'show') + '.visibility');
|
||||
}
|
||||
});
|
||||
|
||||
}(this, document, jQuery));
|
||||
Loading…
Reference in a new issue