Javascript秒到分钟:秒

Javascript Second into Minutes:Seconds

本文关键字:分钟 Javascript      更新时间:2023-09-26

我正在处理一个需要在中显示秒数的时钟

分钟:秒

格式。

我做过一些显示的辅助功能,但我从来没有真正得到完整的显示。这是我的一些代码:

    var time = 1500;
    //Must declare timeHandler as global variable for stopTimer()
    var timeHandler;
    //Set intial HTML to time
    document.getElementById("timer").innerHTML = display;
    //Timer function for start button
    function timer() {
      timeHandler = setInterval(function() {
        if (time > 0) {
          time--;
          document.getElementById("timer").innerHTML = time;
        }
      }, 1000);
    }
    //Stop function for stop button
    function stopTimer() {
      clearTimeout(timeHandler);
    }
//Timer Display 
var minutes = time/60; 
var second = time%60; 
var display = minutes + ":" + seconds;

HTML:

<h1> Pomodoro Clock</h1>
<!--Place holder for timer-->
<div id="timer" class="circle">Timer</div>
<!--//Start Button-->
<button onclick="setTimeout(timer, 1000);">Start</button>
<!--Stop Button-->
<button onclick="stopTimer()">Stop</button>

下面的formatTime函数需要几秒钟的时间,并将其转换为MM:SS格式(包括填充的零):

var time = 1500;
//Must declare timeHandler as global variable for stopTimer()
var timeHandler;
//Set intial HTML to time
document.getElementById("timer").innerHTML = display;
//Timer function for start button
function timer() {
  timeHandler = setInterval(function() {
    if (time > 0) {
      time--;
      document.getElementById("timer").innerHTML = formatTime(time);
    }
  }, 1000);
}
//Stop function for stop button
function stopTimer() {
  clearTimeout(timeHandler);
}
function formatTime(seconds) {
    //Timer Display 
    var minutes = seconds / 60; 
    var second = seconds % 60;
    return ('0'+minutes).substr(-2) +":"+ ('0'+seconds).substr(-2);
}

首先你必须使用clearInterval,然后你不会每秒钟更新一次你的display

检查这个小提琴