js判断当前页面是否活动页面
2022-04-30 16:47 狼人:-) 阅读(873) 评论(0) 收藏 举报在开发中,希望当前页面如果不是活动页面,即用户切换了tab页,或者用户把浏览器缩小隐藏了
这个时候,我们希望页面暂停,比如游戏暂停,视频停止播放等。
那怎么做呢?
1、使用document.hidden来判定是否隐藏
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
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";} // 添加监听器,监听当前是否活动页面document.addEventListener(visibilityChange, function() { document.title = document[state];}, false); |
2、使用requestAnimationFrame,如果当前不是活动页面,则requestAnimationFrame不会回调。setInterval会一直走
setInterval(()=>{
console.log(111);
(window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame)(function(){
console.log(2);
});
})
转自 https://blog.csdn.net/lqyygyss/article/details/90488912
声明:此博有部分内容为转载,版权归原作者所有~

浙公网安备 33010602011771号