Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

229
Views
Agregue el mensaje EXPIRATION al temporizador de cuenta regresiva JS

Tengo el siguiente guión:

 document.getElementById("timer").innerHTML = 0 + ":" + 10; function startTimer() { var presentTime = document.getElementById("timer").innerHTML; var timeArray = presentTime.split(/[:]+/); var m = timeArray[0]; var s = checkSecond(timeArray[1] - 1); if (s == 59) { m = m - 1; } if (m < 0) { return; } document.getElementById("timer").innerHTML = m + ":" + s; console.log(m); setTimeout(startTimer, 1000); } function checkSecond(sec) { if (sec < 10 && sec >= 0) { sec = "0" + sec; } // add zero in front of numbers < 10 if (sec < 0) { sec = "59"; } return sec; }
 <div class="sale_content"> СКИДКА АКТИВНА ЕЩЁ: <span id="timer"></span> </div>

Todo funciona muy bien, pero cuando el temporizador caduca, solo muestra "0:00"

¿Cómo puedo agregar un mensaje de caducidad dentro?

¡Gracias!

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Puede agregar el mensaje de caducidad de su mensaje, dentro del minuto de caducidad si bloquea if (m<0){} antes de la declaración de devolución. Agregué la solución a su código a continuación como referencia

 <div class="sale_content"> СКИДКА АКТИВНА ЕЩЁ: <span id="timer"></span> </div> <script> document.getElementById('timer').innerHTML = 0 + ":" + 3; function startTimer() { var presentTime = document.getElementById('timer').innerHTML; var timeArray = presentTime.split(/[:]+/); var m = timeArray[0]; var s = checkSecond((timeArray[1] - 1)); if(s==59){m=m-1} if(m<0){ document.getElementById('timer').innerHTML = "Timer expired." return } document.getElementById('timer').innerHTML = m + ":" + s; console.log(m) setTimeout(startTimer, 1000); } function checkSecond(sec) { if (sec < 10 && sec >= 0) {sec = "0" + sec}; // add zero in front of numbers < 10 if (sec < 0) {sec = "59"}; return sec; } startTimer(); </script> </body> </html>
about 4 years ago · Juan Pablo Isaza Report

0

el problema es que desea console.log(m) , que es solo 0:00. Cambié un poco de su código para que en lugar de m registre n , que es: n = m + ":" + s;

 <div class="sale_content"> СКИДКА АКТИВНА ЕЩЁ: <span id="timer"></span> </div> <script> document.getElementById('timer').innerHTML = 0 + ":" + 10; function startTimer() { var presentTime = document.getElementById('timer').innerHTML; var timeArray = presentTime.split(/[:]+/); var m = timeArray[0]; var s = checkSecond((timeArray[1] - 1)); if(s==59){m=m-1} if(m<0){ return } document.getElementById('timer').innerHTML = n = m + ":" + s; console.log(n) setTimeout(startTimer, 1000); } function checkSecond(sec) { if (sec < 10 && sec >= 0) {sec = "0" + sec}; // add zero in front of numbers < 10 if (sec < 0) {sec = "59"}; return sec; } </script>

inténtalo así

about 4 years ago · Juan Pablo Isaza Report

0

 var timeleft = 11; var downloadTimer = setInterval(function(){ if(timeleft <= 0){ clearInterval(downloadTimer); alert("Timer Expired!") return; } document.getElementById("progressBar").value = timeleft - 1; document.getElementById("timer").innerHTML = "0:"+(timeleft - 1); timeleft -= 1; }, 1000);
 <div class="sale_content"> СКИДКА АКТИВНА ЕЩЁ: <span id="timer"></span> </div> <progress value="0" max="10" id="progressBar"></progress>

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!