typescript 判断浏览器前后台的切换监听

 
 

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,经过了一点点的修改

猜你喜欢

转载自blog.csdn.net/u010971754/article/details/76416752