在JavaScript中检测系统时间的变化 [英] Detecting changes to system time in JavaScript

查看:99
本文介绍了在JavaScript中检测系统时间的变化的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

解决方案

有没有(便携式)方式来跟踪JavaScript中的变量。另外,日期信息不在DOM中,所以您不会发现触发DOM事件的可能性。



最好的方法是使用 setInterval 定期检查(每秒?)。 示例

  function timeChanged(delta){
// Whatever
}

setInterval(function timeChecker(){
var oldTime = timeChecker.oldTime || new Date ,
newTime = new Date(),
timeDiff = newTime - oldTime;

timeChecker.oldTime = newTime;

if(Math.abs timeDiff)> = 5000){//五秒宽恕
timeChanged(timeDiff);
}
},500);


How can I write a script to detect when a user changes their system time in JS?

解决方案

There is no (portable) way to track a variable in JavaScript. Also, date information does not lie in the DOM, so you don't get the possibility of a DOM event being triggered.

The best you can do is to use setInterval to check periodically (every second?). Example:

function timeChanged(delta) {
  // Whatever
}

setInterval(function timeChecker() {
  var oldTime = timeChecker.oldTime || new Date(),
      newTime = new Date(),
      timeDiff = newTime - oldTime;

  timeChecker.oldTime = newTime;

  if (Math.abs(timeDiff) >= 5000) { // Five second leniency
    timeChanged(timeDiff);
  }
}, 500);

这篇关于在JavaScript中检测系统时间的变化的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆