0

Here is my code below, it works fine but I need to change the countdown timer into minutes and seconds. Something like this 59:59 and 09:09 when it's below 10. And thanks so much for the help.

var test = 3600;
$('button').click(function(){
if (localStorage.getItem("counter")) {
    if (localStorage.getItem("counter") <= 0) {
        var value = test;
    } 
    else {
        var value = localStorage.getItem("counter");
    }
  } 
    else {
        var value = test;
    }
    
    $('#divCounter').text(value);

var counter = function() {
    if (value == 0) {
        localStorage.setItem("counter", test);
        value = 0;
    } 
    else {
        value = parseInt(value) - 1;
        localStorage.setItem("counter", value);
    }
    
    $('#divCounter').text(value);
};

var interval = setInterval(function() { counter(); }, 1000);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div id="divCounter">3600</div>
<br>
<button>Start The Counter</button>
mowx
  • 77
  • 8

1 Answers1

3

One minute = total / 60.
Seconds = total % 60.

Add 0 if minutes or seconds below 10.
Just add this calculations before adding to html.

var test = 3600;
$('button').click(function(){
if (localStorage.getItem("counter")) {
    if (localStorage.getItem("counter") <= 0) {
        var value = test;
    } 
    else {
        var value = localStorage.getItem("counter");
    }
  } 
    else {
        var value = test;
    }

    $('#divCounter').text(value);

var counter = function() {
    if (value == 0) {
        localStorage.setItem("counter", test);
        value = 0;
    } 
    else {
        value = parseInt(value) - 1;
        localStorage.setItem("counter", value);
    }
    var minutes = Math.floor(value / 60)
    var seconds = value % 60
    if (minutes<10) minutes = '0'+minutes      
    if (seconds<10) seconds = '0'+seconds    
    $('#divCounter').text(minutes+':'+seconds);
};

var interval = setInterval(function() { counter(); }, 1000);
});
Itamar
  • 1,601
  • 1
  • 10
  • 23