como hacer que un countdown vuelva a empezar con otra fecha cuando termina?

Tapioca Seguir

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
7 Jun 2013
Mensajes
106
Hola betas, queria ver si alguno sabe ayudarme, tengo un countdown que cuando llega a cero, a la fecha determinada, muestra un determinado texto. Me gustaria saber si hay alguna manera de configurar para que ese countdown, al dia siguiente que llego a cero, vuelva a empezar con otra fecha diferente, o sea, que yo le indicara al countdown por ej,

Contabilizar hasta el 27 de abril
el 27 de abril mostrar X texto
a partir del 28 de abril contabilizar hasta el 10 de mayo y mostrar de vuelta x texto
a partir del 11 contabilizar hasta el 20 de mayo...y asi sucesivamente...
se entiende la idea?

este es el script del countdown..




<SCRIPT type="text/javascript">





var month = '5';
var day = '10';
var hour = 0;
var tz = -5;
var lab = 'script';

function start() {displayTZCountDown(setTZCountDown(month,day,hour,tz),lab);}

// ** The start function can be changed if required **
window.onload = start;



function setTZCountDown(month,day,hour,tz)
{
var toDate = new Date();
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 (day.substr(0,1) == '+')
{var day1 = parseInt(day.substr(1));
toDate.setDate(toDate.getDate()+day1);
}
else{toDate.setDate(day);
}
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 displayTZCountDown(countdown,tzcd)
{
if (countdown < 0) document.getElementById(tzcd).innerHTML = "Sorry, you are too late.";
else {var secs = countdown % 60;
if (secs < 10) secs = '0'+secs;
var countdown1 = (countdown - secs) / 60;
var mins = countdown1 % 60;
if (mins < 10) mins = '0'+mins;
countdown1 = (countdown1 - mins) / 60;
var hours = countdown1 % 24;
var days = (countdown1 - hours) / 24;
document.getElementById(tzcd).innerHTML = days + " day" + (days == 1 ? '' : 's') + ' + ' +hours+ 'h : ' +mins+ 'm : '+secs+'s';
setTimeout('displayTZCountDown('+(countdown-1)+',\''+tzcd+'\');',999);
}
}
</SCRIPT>

Aclaro, yo no hice el script!
 

David077

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Abr 2014
Mensajes
138
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
intenta hacer esto:

Usa este código:

PHP:
<SCRIPT type="text/javascript">





var month = '5'; 
var day = '10'; 
var hour = 0; 
var tz = -5; 
var lab = 'script';

var tmonth = month; 
var tday = day; 
var thour = hour; 
var ttz = tz; 

function start() {displayTZCountDown(setTZCountDown(month,day,hour, tz),lab);}

// ** The start function can be changed if required **
window.onload = start;



function setTZCountDown(month,day,hour,tz) 
{
var toDate = new Date();
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 (day.substr(0,1) == '+') 
{var day1 = parseInt(day.substr(1));
toDate.setDate(toDate.getDate()+day1);
} 
else{toDate.setDate(day);
}
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 displayTZCountDown(countdown,tzcd) 
{
if (countdown < 0) document.getElementById(tzcd).innerHTML = "Sorry, you are too late."; 
else {var secs = countdown % 60; 
if (secs < 10) secs = '0'+secs;
var countdown1 = (countdown - secs) / 60;
var mins = countdown1 % 60; 
if (mins < 10) mins = '0'+mins;
countdown1 = (countdown1 - mins) / 60;
var hours = countdown1 % 24;
var days = (countdown1 - hours) / 24;

if(days == 0 && hours == 0 && mins == 0){
displayTZCountDown(setTZCountDown(tmonth,tday,thour, ttz),lab);
}else{
document.getElementById(tzcd).innerHTML = days + " day" + (days == 1 ? '' : 's') + ' + ' +hours+ 'h : ' +mins+ 'm : '+secs+'s';
setTimeout('displayTZCountDown('+(countdown-1)+',\''+tzcd+'\');',999);
}
}
}
</SCRIPT>

Me dices si te funciona o no ;)
 

Tapioca

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
7 Jun 2013
Mensajes
106
pregunta, desde donde configuraria la segunda y subsiguientes fechas?
 
Arriba