获取客户端时间差

问题:试题页面,通过获取提交任务客户端时间戳 - 试题显示任务时间戳 = 用户有效作业时间,对于用户修改本机时间。会导致无效作业时间

   new Date().getTime()获取客户端时间,毫秒级。用户可以随意更改

方案1:通过jQuery获取服务端时间来计算差值

new Date($.ajax({type:'HEAD',async: false}).getResponseHeader("Date")).getTime(); 只能获取到秒

方案2:如果要求到毫秒 通过定时器中显示试题加到提交试题

export function SetworkTime() {if (parent.window.DoingTask.worktimeCountID != 0) {
            clearInterval(parent.window.DoingTask.worktimeCountID);
            parent.window.DoingTask.worktimeCountID = 0;
            parent.window.DoingTask.worktimeCount = 0;
        }
        // 有效作业时间
        parent.window.DoingTask.worktimeCount += 5;
        parent.window.DoingTask.worktimeCountID = setInterval(function () {
            parent.window.DoingTask.worktimeCount += 5;
        },5);
    }
}

之所以以5ms 为单位计算。因为了一毫秒 +1 ,十秒只能加到2400不准确。 如有更好的方法欢迎指教

 

转载于:https://www.cnblogs.com/chuanq/p/11250445.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值