Foros del Web » Programando para Internet » Javascript »

Resta de varias fechas

Estas en el tema de Resta de varias fechas en el foro de Javascript en Foros del Web. Hola a tod@s: Estoy intentando programar una aplicación que me muestre el tiempo que hace que no hago ciertas cosas. Por ejemplo: ¿Cuánto hace que ...
  #1 (permalink)  
Antiguo 03/03/2015, 11:42
 
Fecha de Ingreso: enero-2015
Mensajes: 12
Antigüedad: 9 años, 3 meses
Puntos: 0
Resta de varias fechas

Hola a tod@s:

Estoy intentando programar una aplicación que me muestre el tiempo que hace que no hago ciertas cosas. Por ejemplo:

¿Cuánto hace que no como? 00 años : 00 días : 04 horas : 15 minutos : 45 segundos
¿Cuánto hace que no voy al cine? 00 años : 06 días : 14 horas : 37 minutos : 22 segundos
¿Cuánto hace que no viajo? 00 años : 233 días : 19 horas : 02 minutos : 03 segundos

Básicamente, sería una resta de fechas. Yo lo he programado así:

Código:
<html> <head> <title>Título de la página</title> <script type="text/javascript"> function restarFechas(){ var hoy=new Date(); var fechaActual=new Date(hoy.getFullYear()+"/"+(hoy.getMonth()+1)+"/"+hoy.getDate()+" "+hoy.getHours()+":"+hoy.getMinutes()+":"+hoy.getSeconds()); var fecha=new Date("2014/4/2 10:30:00"); var restaFechas=(fechaActual-fecha)/1000; var years=0; var dias=0; var horas=0; var minutos=0; var segundos=0; while(restaFechas>0){ if(restaFechas>=31536000){ years=parseInt(restaFechas/31536000); restaFechas=restaFechas-years*31536000; }else if(restaFechas>=86400){ dias=parseInt(restaFechas/86400); restaFechas=restaFechas-dias*86400; }else if(restaFechas>=3600){ horas=parseInt(restaFechas/3600); restaFechas=restaFechas-horas*3600; }else if(restaFechas>=60){ minutos=parseInt(restaFechas/60); restaFechas=restaFechas-minutos*60; }else{ segundos=restaFechas; restaFechas=0; } } years=dobleDigito(years); dias=dobleDigito(dias); horas=dobleDigito(horas); minutos=dobleDigito(minutos); segundos=dobleDigito(segundos); document.getElementById('displayReloj').innerHTML=years+" años : "+dias+" días : "+horas+" horas : "+minutos+" minutos : "+segundos+" segundos"; var t = setTimeout(function(){restarFechas()},1000); } function dobleDigito(i) { if(i<10){ i="0"+i; // Añadir el cero en números menores de 10 } return i; } </script> </head> <body onload="restarFechas()"> <div id ="displayReloj"></div> </body> </html>
pero sólo me aparece una fila (con una fecha) y me gustaría que apareciesen varias filas (cada una con su fecha distinta), espero haberme explicado bien.

¿Cómo podría hacerlo?

Gracias por vuestra ayuda ;)

Etiquetas: html, resta
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:14.