Foros del Web » Programando para Internet » Javascript »

Faltan X días para el próximo día X

Estas en el tema de Faltan X días para el próximo día X en el foro de Javascript en Foros del Web. Hola amigos, los molesto para solicitarles algún javascript que cuente los días que faltan hasta el próximo día X. Por ejemplo: Faltan 17 días para ...
  #1 (permalink)  
Antiguo 12/08/2010, 21:53
 
Fecha de Ingreso: septiembre-2009
Mensajes: 87
Antigüedad: 14 años, 7 meses
Puntos: 1
Faltan X días para el próximo día X

Hola amigos, los molesto para solicitarles algún javascript que cuente los días que faltan hasta el próximo día X.

Por ejemplo:

Faltan 17 días para el próximo día 15

Se entiende?

Es para hacer un countdown que le calcule a los usuarios automáticamente los días que faltan hasta la próxima fecha de pago.

He buscado javascripts de este tipo, pero todos establecen la cuenta regresiva hasta una determinada fecha con día, mes y año. Lo que necesito, en cambio, es simplemente que cuente los días que faltan hasta el día quince del mes siguiente.

Saludos y muchas gracias
  #2 (permalink)  
Antiguo 13/08/2010, 07:26
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Faltan X días para el próximo día X

Hola

Has de conseguir la fecha actual, después con los métodos de la clase Date() montas la fecha ficha final, restas ambas fechas que están en milisegundos y el resto que te de lo conviertes en días
Aquí tienes todo lo que necesitas

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 15/08/2010, 16:29
 
Fecha de Ingreso: septiembre-2009
Mensajes: 87
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Faltan X días para el próximo día X

Chas gracias cumpa; pero se me complica porque lo que necesito no es restar del día presente una fecha fija, si no el día 15 de todos los meses.
  #4 (permalink)  
Antiguo 15/08/2010, 17:35
 
Fecha de Ingreso: septiembre-2009
Mensajes: 87
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Faltan X días para el próximo día X

Lo más parecido que encontré a lo que necesito es este script:

http://www.ajaxpath.com/javascript-timer/

Pero no alcanzo a configurarlo correctamente.

Si alguien me puede echar un clable, agradecido
  #5 (permalink)  
Antiguo 15/08/2010, 17:46
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: Faltan X días para el próximo día X

Creo que esto debería funcionar, pero no lo he probado.
Código Javascript:
Ver original
  1. function dias(){
  2.  var hoy = new Date();
  3.  var anyo = hoy.getFullYear();
  4.  var dia = hoy.getDate();
  5.  var mes = hoy.getMonth();
  6.  var largo = new Array('31', '28', '31', '30', '31', '30', '31', '31', '30', '31', '30', '31');
  7.  var largoB = new Array('31', '29', '31', '30', '31', '30', '31', '31', '30', '31', '30', '31');
  8.  var cuantos = 0;
  9.  if (anyo % 4 != 0){
  10.   if (parseInt(dia) >14){
  11.    cuantos = parseInt(largo[mes]) - parseInt(dia) + 15;
  12.   }else{
  13.    cuantos = 15 - parseInt(dia);
  14.   }
  15.  }else{
  16.   if (parseInt(dia) >14){
  17.    cuantos = parseInt(largoB[mes]) - parseInt(dia) + 15;
  18.   }else{
  19.    cuantos = 15 - parseInt(dia);
  20.  }
  21. }

Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #6 (permalink)  
Antiguo 15/08/2010, 17:50
 
Fecha de Ingreso: septiembre-2009
Mensajes: 87
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Faltan X días para el próximo día X

Disculpen la metralla de mensajes: es para comentarles que lo único que faltaba configurar en el script es la UTC de su país en la variable tz; por caso, en el mio -3 . Lo aclaro porque es un magnifico script y descuento que alguien lo va a necesitar en algún momento.
  #7 (permalink)  
Antiguo 15/08/2010, 17:51
 
Fecha de Ingreso: septiembre-2009
Mensajes: 87
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Faltan X días para el próximo día X

PS: Gracias chrono, lo solucioné con esto:


Código:
var month = '*'; 
var day = '15';   
var dow = 0;     
var hour = 0;
var tz = -3;  
var lab = 'cd';

function start() {displayCountdown(setCountdown(month,day,hour,tz),lab);}
loaded(lab,start);

var pageLoaded = 0; window.onload = function() {pageLoaded = 1;}
function loaded(i,f) {if (document.getElementById && document.getElementById(i) != null) f(); else if (!pageLoaded) setTimeout('loaded(\''+i+'\','+f+')',100);
}
function setCountdown(month,day,hour,tz) {var m = month; if (month=='*') m = 0;  var c = setC(m,day,hour,tz); if (month == '*' && c < 0)  c = setC('*',day,hour,tz); return c;} function setC(month,day,hour,tz) {var toDate = new Date();if (day.substr(0,1) == '+') {var day1 = parseInt(day.substr(1));toDate.setDate(toDate.getDate()+day1);} else{toDate.setDate(day);}if (month == '*')toDate.setMonth(toDate.getMonth() + 1);else if (month > 0) { if (month <= toDate.getMonth())toDate.setYear(toDate.getYear() + 1);toDate.setMonth(month-1);}
if (dow >0) toDate.setDate(toDate.getDate()+(dow-1-toDate.getDay())%7);
toDate.setHours(hour);toDate.setMinutes(0-(tz*60));toDate.setSeconds(0);var fromDate = new Date();fromDate.setMinutes(fromDate.getMinutes() + fromDate.getTimezoneOffset());var diffDate = new Date(0);diffDate.setMilliseconds(toDate - fromDate);return Math.floor(diffDate.valueOf()/1000);}
function displayCountdown(countdn,cd) 
{
	if (countdn < 0) document.getElementById(cd).innerHTML = "Sorry, you are too late."; else 
		{
			var secs = countdn % 60; 
			if (secs < 10) secs = '0'+secs;var countdn1 = (countdn - secs) / 60;
			var mins = countdn1 % 60; 
			if (mins < 10) mins = '0'+mins;
			countdn1 = (countdn1 - mins) / 60;
			var hours = countdn1 % 24;
			var days = (countdn1 - hours) / 24;
			document.getElementById(cd).innerHTML = days+' days + '+hours+' : '+mins+' : '+secs;setTimeout('displayCountdown('+(countdn-1)+',\''+cd+'\');',999);
		}
}
  #8 (permalink)  
Antiguo 16/08/2010, 04:02
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Faltan X días para el próximo día X

Hola

Prueba con esto
Código Javascript:
Ver original
  1. function crono(){
  2. var hoy = new Date();
  3. if (hoy.getDate() >= 15) { mes = hoy.getMonth()+1; } else { mes = hoy.getMonth();}
  4. var fechaFinal = new Date(hoy.getFullYear(), mes, 15)
  5. diferencia = fechaFinal.getTime() - hoy.getTime()
  6. segundostotales = parseInt(diferencia /1000);
  7. diasFaltan = parseInt((segundostotales/60/60/24)+1);
  8. document.getElementById('contador_regresivo').innerHTML = 'Falta ' + diasFaltan;
  9. }
  10.  
  11. window.onload=function(){crono();};
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Etiquetas: Ninguno
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 10:51.