mercredi 27 janvier 2021

Restart Countdown Timer with New Random Variable - Javascript

I found this countdown timer somewhere online and am trying to combine it with a random number generator. I'm also trying to restart the timer automatically while generating a new random number to base the timer off of. For example, first random number would be around 5 seconds, a countdown would commence down to 0, then it would generate a new random number, reset the countdown based on that new random number, and commence to countdown to 0, etc. (Timer "EXPIRED" isn't necessary to have - I left it as a placeholder for me to make sure the code was working.)

Most of what I have Googled shows a start/stop/restart button of some sort, which I am trying to avoid - or uses a static variable that doesn't change. Any assistance is appreciated.

r = 5*Math.random();
document.getElementById("rv").innerHTML = r


// Set the date we're counting down to
var countDownDate = new Date().getTime();
countDownDate = countDownDate + (r*1000);

// 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);
    
  // Output the result in an element with id="demo"
  document.getElementById("demo").innerHTML = days + "d " + hours + "h "
  + minutes + "m " + seconds + "s ";
    
  // If the count down is over, write some text 
  if (distance < 0) {
    clearInterval(x);
    document.getElementById("demo").innerHTML = "EXPIRED";
  }

}, 200);





Aucun commentaire:

Enregistrer un commentaire