标签:常用 undefined 汇总 js state visibilityChange let hidden document
1.判断当前网站是否被打开且是激活可见状态,是否被别的窗口遮住?
/** 判断当前网站是否被打开,适配不同浏览器,返回不同的监听事件等 */ export function isHideDocument() { let hidden; let state; let 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, visibilityChange, state } }View Code
// 如何使用该方法展示 // 获取和监听页面状态 const isHideDocumentInit = isHideDocument(); //获取当前运行浏览器适配的名字; let isHide = document[isHideDocumentInit.state];//是否当前是非激活状态 this.$store.commit('SET_DOCUMENT_IS_HIDE', isHide === 'hidden') document.addEventListener(isHideDocumentInit.visibilityChange, () => { //添加是否可视的监听 isHide = document[isHideDocumentInit.state] this.$store.commit('SET_DOCUMENT_IS_HIDE', isHide === 'hidden') }, false);
标签:常用,undefined,汇总,js,state,visibilityChange,let,hidden,document
来源: https://www.cnblogs.com/chun321/p/15433131.html
本站声明:
1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。