JSFiddle - React, Tailwind, and code Playground
HTML
<button id="id_do_botao" class="botao_vermelho">Botão que irá alterar de cor</button>
<br />
<input type="button" value="Iniciar prazo" onclick="criarPrazo()" />
<br />
Clique em "Iniciar prazo" e rode o código novamente imediatamente. O botão ficará verde. Agurade 1 minuto e rode o código novamente, o botão voltará a ser vermelho.
<br /><br />
Este é apenas um exemplo de 1 minuto. Para alterar para 24 horas, descomente as linhas do JavaScript e apague a linha que estiver acima da linha comentada.
CSS
.botao_vermelho{
background: red;
}
.botao_verde{
background: green;
}
JavaScript
function criarPrazo(){
var expira = new Date();
var expira = expira.setMinutes(expira.getMinutes()+1);
// var expira = expira.setHours(expira.getHours()+24);
localStorage.botao = expira;
$("input").val("Prazo de 1 minuto iniciado.").prop("disabled", true);
}
if(localStorage.botao){
var tempo_fim = localStorage.botao;
var agora = new Date();
var agora = agora.setMinutes(agora.getMinutes());
// var agora = agora.setHours(agora.getHours());
var tempo = tempo_fim - agora;
if(tempo <= 0){
localStorage.removeItem("botao");
}else{
var button = $("#id_do_botao");
button.addClass("botao_verde")
.removeClass("botao_vermelho");
$("input").val("Prazo de 1 minuto iniciado.").prop("disabled", true);
}
}