JSFiddle - React, Tailwind, and code Playground

HTML

<div id="container">
    <div class="element" id="el1"><b>element 1</b> <span class="timeout">10</span> seconds</div>
    <div class="element" id="el2"><b>element 2</b> <span class="timeout">1000</span> seconds</div>
    <div class="element" id="el3"><b>element 3</b> <span class="timeout">100</span> seconds </div>
    <div class="element" id="el4"><b>element 4</b> <span class="timeout">10</span> seconds </div>
    <div class="element" id="el5"><b>element 5</b> <span class="timeout">10000</span> seconds</div>
 </div>

CSS

.selec {background-color: #f6d13a !important;}

#container {
    display: flex;
    flex-direction: column;
}

.element {
    order: 0;
    background-color: #c5c5c5; 
    padding: 1%; 
    width: 50%; 
    margin-bottom: 2px;
    transition: all .3s;
    text-align:right;
}

b {float: left;}

JavaScript

function timer(selector) {
    var self = $(selector);
    var sec = parseInt(self.find('span.timeout').text());
    console.log(sec)
    order++;
    var actualTime  = $('span.timeout').html();  
    console.log("Original time " + actualTime)
    self.addClass('selec').css('order',order+'');
    var interval = setInterval(function() {
        sec--;
        console.log(sec)
        if (sec >= 0) {
            self.find('span.timeout').text(sec);
        } else if($(this).find('span').text() <= 0) {
            console.log(sec)
            var text =  self.find('span.timeout').text(actualTime);
            console.log(actualTime)
            clearInterval(interval);
        }
        $('.element').each(function(){
            if($(this).find('span').text() == 0){
                $(this).removeClass('selec');
                $(this).css('order','0');
            }
        });     
    }, 1000);
    
}

var order = 1; 
$("body").on('click', '.element', function() {
    timer(this);
});