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

313
Views
Cuenta regresiva de Javascript para mostrar, recordar y ocultar un mensaje en una fecha específica

He estado tratando de hacer que este contador muestre el día restante hasta una fecha establecida, luego muestre un mensaje en la fecha establecida y finalmente oculte el mensaje después de que haya pasado la fecha.

Esto es lo que tengo hasta ahora...

 // Set the date we're counting down to var countDownDate = new Date("June 26, 2022 1:01:00").getTime(); // Update the count down every 1 second var x = setInterval(function () { // Get today's date and time var now = new Date().getTime(); // Find the distance between now and the count down date var distance = countDownDate - now; // Time calculations for days, hours, minutes and seconds var days = Math.floor(distance / (1000 * 60 * 60 * 24)); var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); var seconds = Math.floor((distance % (1000 * 60)) / 1000); // Output the result in an element with id="countdown" if (distance > 0) { document.getElementById("countdown").innerHTML = days + " days until the June 30th, 2022"; } else if (distance == 0) { document.getElementById("countdown").innerHTML = "Time To Vote"; } else { document.getElementById("countdown").innerHTML = "EXPIRED"; } }, 1000);

La secuencia de comandos anterior muestra la cuenta regresiva de los días restantes y "EXPIRADO" cuando finaliza el contador de fechas, pero no muestra el mensaje "Hora de votar" en el día establecido. ¡Gracias por tu ayuda!

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

0

Tengo un conocimiento limitado y una pequeña puntuación de reputación para comentar sobre lo que está haciendo, pero ¿también está teniendo en cuenta que la new Date().getTime() devuelve milisegundos de época?

Lo que significa que, si los milisegundos de la época de esa fecha no coinciden exactamente con los milisegundos de la época actual, no se ejecutará.

Entonces, la Época de la fecha puede ser (ejemplo) 1000 pero la época actual puede ser 1001, y no funcionaría.

Puede intentar hacer coincidir las unidades de tiempo individuales usando new Date().getHours() , new Date().getSeconds() , etc., para limitar cuánto debe verificar.

EDITAR: no lo he probado, y esta es probablemente una idea terrible, pero podría eliminar los últimos 5 dígitos de ambas marcas de tiempo de época dividiendo y llamando a .toFixed() o convirtiéndolo en una cadena y usando String.slice() , luego compararlos

about 4 years ago · Juan Pablo Isaza Report

0

puedes hacer algo como esto

 var countDownDate = new Date("June 26, 2022 0:00:00").getTime(); // Update the count down every 1 second var x = setInterval(function() { // Get today's date and time var now = new Date().getTime(); // Find the distance between now and the count down date var distance = countDownDate - now; // Time calculations for days, hours, minutes and seconds var days = Math.floor(distance / (1000 * 60 * 60 * 24)); var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); var seconds = Math.floor((distance % (1000 * 60)) / 1000); // Output the result in an element with id="countdown" if (days > 0) { const time = [hours, minutes, seconds].map(s => s.toString().padStart(2, '0')).join(':') document.getElementById("countdown").innerHTML = `${days} days and ${time} until the June 30th, 2022`; } else if (days === 0) { document.getElementById("countdown").innerHTML = "Time To Vote"; } else { document.getElementById("countdown").innerHTML = "EXPIRED"; } }, 1000);
 <div id="countdown"></div>

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!