Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

103
Visualizações
Javascript Continue From a Specific Time

I have a timer and a time. The time format is like the currentTime variable in my code. I want to get the currentTime time and add +1 to it every second keeping the same time format. Also I would like to subtract the currentTime + 1 - the total hours but keeping it real time with setInterval. Hope I am clear about my questions. Thanks.

HTML

<button id="start">START</button>
<button id="pause">PAUSE</button>
<div id="output"></div>

Javscript

const startTimeButton = document.querySelector("#start")
const pauseTimeButton = document.querySelector("#pause")
const output = document.querySelector("#output");

let currentTime = "12: 42: 17";
let totalHours = 30;

let seconds = 0;
let interval = null;

const timer = () => {
    seconds++;
    // Get hours
    let hours = Math.floor(seconds / 3600);
    // Get minutes
    let minutes = Math.floor((seconds - hours * 3600) / 60);
    // Get seconds
    let secs = Math.floor(seconds % 60);

    if (hours < 10) {
        hours = `0${hours}`;
    }
    if (minutes < 10) {
        minutes = `0${minutes}`;
    }
    if (secs < 10) {
        secs = `0${secs}`;
    }
    return `${hours}:${minutes}:${secs}`;
};

startTimeButton.addEventListener("click", () => {
    pauseTimeButton.style.display = "flex";
    startTimeButton.style.display = "none";
    console.log("START TIME CLICKED");

    if (interval) {
        return;
    }

    interval = setInterval(timer, 1000);

});

pauseTimeButton.addEventListener("click", () => {
    pauseTimeButton.style.display = "none";
    startTimeButton.style.display = "flex";
    console.log("PAUSE TIME CLICKED");
    clearInterval(interval);
    interval = null;
});

// Here is an example of what I would like to achive
// currentTime + 1 (each second) 
// output.innerHTML = (parseInt(currentTime) + 1) - totalHours;
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda