Index: ssts-web/src/main/webapp/common/includeExtJsAndCss.jsp =================================================================== diff -u -r34472 -r34474 --- ssts-web/src/main/webapp/common/includeExtJsAndCss.jsp (.../includeExtJsAndCss.jsp) (revision 34472) +++ ssts-web/src/main/webapp/common/includeExtJsAndCss.jsp (.../includeExtJsAndCss.jsp) (revision 34474) @@ -73,50 +73,33 @@ clearOncontextmenuEvent(); },3000) //空闲一段时间后没任何操作,强制用户退出系统 - var timer; - var timer2; + var pageTimer = {}; // 计时器数组 var min = 60*1000; var sessionTimeout = 30; var interval = 1*min; - var sessionTimeoutForPage; - var sessionTimeoutForHome; if(sstsConfig.loginSecurirtyConfig && sstsConfig.loginSecurirtyConfig.sessionTimeout){ sessionTimeout = parseInt(sstsConfig.loginSecurirtyConfig.sessionTimeout); interval = sessionTimeout*min / 10; } - if(document.location.href !== top.document.location.href){ - setIntervalFunction(sessionTimeout*min,'page'); - }else { - setIntervalFunction(sessionTimeout*min,'home'); + if(document.location.href == top.document.location.href){ + sessionStorage.setItem('timer',sessionTimeout*min); + setIntervalFunction(); } - function setIntervalFunction(sessionTimeout,pageName){ - if(pageName == 'home'){ - sessionTimeoutForHome = sessionTimeout; - timer = setInterval(function(){ - sessionTimeoutForHome = sessionTimeoutForHome - interval; - if(sessionTimeoutForHome <= 0 && document.location.href == top.document.location.href){ - logout("${ctx}"); - } - },interval) - }else { - sessionTimeoutForPage = sessionTimeout; - timer2 = setInterval(function(){ - sessionTimeoutForPage = sessionTimeoutForPage - interval; - if(sessionTimeoutForPage <= 0 && document.location.href !== top.document.location.href){ - logout("${ctx}"); - } - },interval) - } + function setIntervalFunction(){ + pageTimer[0] = setInterval(function(){ + var time = sessionStorage.getItem('timer'); + sessionStorage.setItem('timer',time-interval); + if(sessionStorage.getItem('timer') <= 0){ + sessionStorage.removeItem('timer'); + logout("${ctx}"); + } + },interval) } - document.addEventListener('mousemove',function(e){ - clearInterval(timer); - clearInterval(timer2); - if(document.location.href !== top.document.location.href){ - setIntervalFunction(sessionTimeout*min,'page'); - }else { - setIntervalFunction(sessionTimeout*min,'home'); - } - }) + window.onmousemove=document.onmousemove=(e)=>{ + clearInterval(pageTimer[0]); + sessionStorage.setItem('timer',sessionTimeout*min); + setIntervalFunction(); + }