private getPage() {
var hidden, state, visibilityChange; if (typeof document["hidden"] !== "undefined") { hidden = "hidden"; visibilityChange = "visibilitychange"; state = "visibilityState"; } else if (typeof document["mozHidden"] !== "undefined") { hidden = "mozHidden"; visibilityChange = "mozvisibilitychange"; state = "mozVisibilityState"; } else if (typeof document["msHidden"] !== "undefined") { hidden = "msHidden"; visibilityChange = "msvisibilitychange"; state = "msVisibilityState"; } else if (typeof document["webkitHidden"] !== "undefined") { hidden = "webkitHidden"; visibilityChange = "webkitvisibilitychange"; state = "webkitVisibilityState"; } return { 'hidden': hidden, 'visibilityChange': visibilityChange, 'state': state }; }var Page= this.getPage();
if (document[Page['state']] == 'hidden') {
console.log("h5切换到后台");
alert("h5切换到后台");
} else
{
alert("h5获得焦点");
console.log("h5获得焦点" + hours + ":" + minutes + ":" + seconds);
}
document.addEventListener(Page['visibilityChange'], eventHandler, false);
这篇文章,本人项目用的是egret引擎,以上代码在pc上的浏览器和微信的内置浏览器都能很精准的判断。
参考的文章连接 点击打开链接
原链接用的是js语言,我这里是ts,经过了一点点的修改