-1

Sorry to clutter your screen with a noob question.

I'm making a pomodoro timer app (My first app outside of unity games) I just need to know how to make the timer display, and how to make it count down from whatever number the user input.

I've looked at a few pomodoro apps online but haven't found a solution.

Here is the HTML I have written so far:

<!DOCTYPE html>
<html lang="en">
<head>
    <h1>Pomodori</h1>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Pomodoro App</title>
</head>
<script>



</script>

<body>

    <button>Work</button>
    <button>Short Break</button>
    <button>Long Break</button>
    <button>Pause</button>
</body>
</html>

I just need to know how to make a basic timer and display it on the index.html page.

games247
  • 65
  • 1
  • 10
  • This question may have been answered already. Have you checked out: https://stackoverflow.com/questions/29551073/accurate-timers-in-vanilla-javascript and https://stackoverflow.com/questions/6233927/microsecond-timing-in-javascript – Chif Aug 22 '19 at 20:57

1 Answers1

0

Perhaps this will help...

How TO - JavaScript Countdown Timer

<!-- Display the countdown timer in an element -->
<p id="demo"></p>

<script>
// Set the date we're counting down to
var countDownDate = new Date("Jan 5, 2021 15:37:25").getTime();

// Update the count down every 1 second
var x = setInterval(function() {

  // Get today's date and time
  var now = new Date().getTime();

  // Find the distance between now and the count down date
  var distance = countDownDate - now;

  // Time calculations for days, hours, minutes and seconds
  var days = Math.floor(distance / (1000 * 60 * 60 * 24));
  var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
  var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
  var seconds = Math.floor((distance % (1000 * 60)) / 1000);

  // Display the result in the element with id="demo"
  document.getElementById("demo").innerHTML = days + "d " + hours + "h "
  + minutes + "m " + seconds + "s ";

  // If the count down is finished, write some text 
  if (distance < 0) {
    clearInterval(x);
    document.getElementById("demo").innerHTML = "EXPIRED";
  }
}, 1000);
</script>
dlbrandt
  • 21
  • 3