setinterva(),settimeout()在谷歌及Edge下失效

问题遇到的现象和发生背景

写了一个判断界面超时的脚本,结果发现只有在IE浏览器下能正常运行,edge和谷歌都不行

用代码块功能插入代码,请勿粘贴截图
    var lastTime = new Date().getTime();
    var currentTime = new Date().getTime();
    var timeOut = 5 * 60 * 1000;//5分钟超时
    var isOutTime = false;
    //鼠标移动事件
    $(document).mousemove(function () {
        lastTime = new Date().getTime();//更新操作时间
        
    });       
    function loginTimeOut() {
        window.setTimeout(function () {
            if (!isOutTime) {
                currentTime = new Date().getTime();//更新当前时间
                if (currentTime - lastTime > timeOut) {
                    isOutTime = true;
                    $.messager.alert('系统提示', '登录超时,请重新登录!', 'info', function (r) {
                        window.location.href = "http://" + window.location.host + "/login.aspx";
                        isOutTime = false;
                    });
                    $('.panel-tool-close').hide();
                }
            }
            loginTimeOut();
        }, 1000);
    };
    loginTimeOut();
我的解答思路和尝试过的方法

原本是使用的SetInterva(),百度了下说改成用settimeout(),依旧没有效果

试一下把window.setTimeout 换成直接使用 setTimeout