微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 如何在时间到达特定时间时触发功能

我想在时间到达,比如下午3点时触发javascript函数.

时间将动态分配.那么有没有任何javascript函数来实现?

解决方法:

您只需计算当前时间与目标时间之间的差异,并使用该值使用setTimeout().

例如,根据目标浏览器解析日期的方式,您可以执行以下操作:

function alert3pm() {
  alert("It's 3PM!");
}
var timeAt3pm = new Date("1/31/2011 03:00:00 PM").getTime()
  , timeNow = new Date().getTime()
  , offsetMillis = timeAt3pm - timeNow;
setTimeout(alert3pm, offsetMillis);

或者更确切地说,解析日期(因为浏览器之间确实不一致)你可以做这样的事情:

function getTimeAtHour(hour) {
  var t = new Date();
  t.setHours(hour);
  t.setMinutes(0);
  t.setSeconds(0);
  t.setMilliseconds(0);
  return t;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐