sessionStorage实现网站一段时间无操作自动退出登录
在全站引入本js,在sessionStorage中设定一个当前时间,监控网站每有操作就更新这个时间,并设定一个几分钟(本例为1分钟)的延时器判断是否登录状态,如为登录状态则退出 ,代码如下:
(function (checkLogin,loginOut) {//checkLogin判断是否登陆状态的方法,loginOut退出登陆的方法
//两个方法更具实际情况修改
var controlYCTime = 1*60*1000;//无操作时长,此处按情况修改
var controlType = 'mousemove keydown';//触发操作的操作类型,此处按情况修改
var setCT = function () {
sessionStorage.setItem("controlTime", (new Date()).getTime());
clearTimeout(window.controlTimer);
window.controlTimer = setTimeout(function(){
if((new Date()).getTime()-sessionStorage.getItem("controlTime")>=controlYCTime){
$('body').off(controlType);
if(checkLogin()){
loginOut();
}
}
},controlYCTime);
};
setCT();
$('body').on(controlType, function () {
setCT();
});
})(checkLogin,loginOut);