polyfill-service
Version:
A polyfill combinator
22 lines (16 loc) • 503 B
JavaScript
// PageVisibility
(function () {
var prefix = document.webkitVisibilityState ? 'webkit' : document.mozVisibilityState ? 'moz' : null;
function normalizeState () {
document.hidden = document[prefix + 'Hidden'];
document.visibilityState = document[prefix + 'VisibilityState'];
}
if (!prefix) {
return;
}
normalizeState();
document.addEventListener(prefix + 'visibilitychange', function (ev) {
normalizeState();
document.dispatchEvent(new CustomEvent('visibilitychange'));
});
}());