You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改JS小时倒计时代码实现每15分钟间隔倒计时功能

解决方案

原代码默认以60分钟(1小时)为周期锚定整点计算剩余时间,只需调整周期参数和分钟计算基数,即可适配每15分钟一场(每小时0/15/30/45分开场)的需求,秒数计算、定时刷新逻辑无需改动。

修改后完整代码

<script>
/* 计算距离下一场15分钟间隔场次的剩余分钟、秒数
** @returns {Object} minutes: 剩余分钟
**                   seconds: 剩余秒数
*/
function getTimeRemaining() {
  var t = Date.now();
  // 定义15分钟周期对应的毫秒值
  const CYCLE = 15 * 60 * 1000;
  // 秒数计算逻辑保持不变,按分钟周期循环
  var seconds = (60 - Math.floor(t % 60000 / 1000)) % 60;
  // 替换原1小时周期为15分钟周期,调整剩余分钟计算基数
  var minutes = 15 - Math.ceil(t % CYCLE / 60000) + (seconds ? 0 : 1);
  return {
    'minutes': ('0' + minutes).slice(-2),
    'seconds': ('0' + seconds).slice(-2)
  };
}

// 渲染倒计时到页面
function showRemaining() {
  var res = getTimeRemaining();
  document.getElementById('clock').textContent = res.minutes + ':' + res.seconds;
  // 对齐整秒刷新,逻辑不变
  setTimeout(showRemaining, 1020 - (Date.now() % 1000));
}

showRemaining();
</script>

关键修改点说明

  • 将原代码中代表1小时周期的毫秒值3.6e6(即60601000)替换为15分钟对应的毫秒值900000(15601000)
  • 剩余分钟计算的基数从原逻辑的60(每小时总分钟数)改为15(单个15分钟周期的总分钟数)
  • 保留原有的边界处理逻辑:当剩余秒数为0时给分钟数补1,避免整分节点出现数值为负的异常
  • 秒数计算、页面刷新定时逻辑完全复用原代码,这两部分逻辑和长周期无关,可直接适配

内容的提问来源于stack exchange,提问作者simonv4549

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 13:21:27