sessionStorage實現網站一段時間無操作自動退出登錄

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);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章