All threads / How do I put a live time(seconds) counter on a page?

Ask A Question

Notifications

You’re not receiving notifications from this thread.

How do I put a live time(seconds) counter on a page?

Arjun Rajkumar asked in Javascript
As in it should go 00:00 .. 00:05.. 00.49 ..15:55 to whatever. 
Wondering how to do this on the front-end.

Should I just use jquery? Or something else? 
Any suggestions?

Thanks

Arjun
Hi Arjun,

You could use normal JS with the setInterval method. Something like this: 

function timer(seconds){
    clearInterval(countdown);
    displayRemainingTime(seconds);
    const then = Date.now() + seconds * 1000;
    countdown = setInterval(() => {
        const secondsLeft = Math.round((then - Date.now()) / 1000);
        if(secondsLeft < 0) {
            clearInterval(countdown);
            return;
        }
        displayRemainingTime(secondsLeft);
    }, 1000)
}

function displayTimeLeft(){
 //update dom
}


I did something like this as part of a Javascript 30 course by Wes Bos. Recommend checking it out

William

Join the discussion

Want to stay up-to-date with Ruby on Rails?

Join 35,909+ developers who get early access to new tutorials, screencasts, articles, and more.

    We care about the protection of your data. Read our Privacy Policy.

    logo Created with Sketch.

    Ruby on Rails tutorials, guides, and screencasts for web developers learning Ruby, Rails, Javascript, Turbolinks, Stimulus.js, Vue.js, and more. Icons by Icons8

    © 2020 GoRails, LLC. All rights reserved.