在JavaScript中检测系统时间的变化 [英] Detecting changes to system time in JavaScript
本文介绍了在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屋!
查看全文