Page Visibility API是判断页面是否在当前窗口展示,如果显示在当前窗口,则可以选择做或者不做一些事情。
例如点击登录按钮新开窗口登录成功后,返回原页面,无需刷新页面即可显示登录状态等…
目前页面可见性API有两个属性一个事件,如下:
document.hidden
: Boolean值,表示当前页面可见还是不可见
document.visibilityState
: 返回当前页面的可见状态,值包括[hidden,visible,prerender,preview],起重hidden和visible比较实用。
visibilitychange
:当可见状态改变时候触发的事件
检测浏览器是否支持visibilitychange代码:
var isPageVisibilitySupport = (function() { var support = false; if (typeof window.screenX === "number") { ["webkit", "moz", "ms", "o", ""].forEach(function(prefix) { if (support == false && document[prefix + (prefix? "H": "h") + "idden"] + "" !== "undefined") { support = true; } }); } return support; })();