disign | Javascript countdown | a digital sign for a best design!
A digital sign for a best design

Articolo stampato da http://disign.improntedigitali.it/javascript-countdown-287-46-1.html

© Luca Frassineti

Javascript 3.263 visualizzazioni

Javascript countdown

02/12/2011

Un classico sempreverde script che permette un conto alla rovescia in tempo reale che calcola e scrive a video quanto manca in giorni ore minuti secondi ad una certa data.

 

Gli elementi sono: lo script vero e proprio, il campo del form in cui si visualizza il count down, il CSS che modifica la classica visualizzazione del campo input, l'evento body onload a cui si applica l'avvio dello script.

 

Vediamo lo script:

[script type="text/javascript"]
function getTime() {
now = new Date();
evento = new Date("Dec 31 2011 59:59:59"); // inserire la data dell'evento
days = (evento - now) / 1000 / 60 / 60 / 24;
daysRound = Math.floor(days);
hours = (evento - now) / 1000 / 60 / 60 - (24 * daysRound);
hoursRound = Math.floor(hours);
minutes = (evento - now) / 1000 /60 - (24 * 60 * daysRound) - (60 * hoursRound);
minutesRound = Math.floor(minutes);
seconds = (evento - now) / 1000 - (24 * 60 * 60 * daysRound) - (60 * 60 * hoursRound) - (60 * minutesRound);
secondsRound = Math.round(seconds);
sec = (secondsRound == 1) ? " secondo" : " secondi";
if (secondsRound <= 0) { sec = ''; secondsRound =''; }
min = (minutesRound == 1) ? " minuto, " : " minuti, ";
if (minutesRound <= 0) { min = ''; minutesRound = ''; }
hr = (hoursRound == 1) ? " ora, " : " ore, ";
if (hoursRound <= 0) { hr = ''; hoursRound = ''; }

dy = (daysRound == 1)  ? " giorno, " : " giorni, ";
if (daysRound <= 0) { dy = ''; daysRound = ''; }
if (now > evento) document.data.visualizza.value = "Evento avvenuto"
else {
document.data.visualizza.value = "Mancano " + daysRound  + dy + hoursRound + hr + minutesRound + min + secondsRound + sec + " all'evento!";
newtime = window.setTimeout("getTime();", 1000);
}
}
[/script]

 

Lo script si può modificare in modo che allo scadere della data la pagina si modifichi secondo le nostre istruzioni modificando la riga

if (now > evento) document.data.visualizza.value = "Evento avvenuto"

in

if (now > evento) { qui le istruzioni da eseguire }

 

Il CSS, semplicemente eliminiamo i bordi del campo

[style type="text/css"]
.date {
    border: 0px;
}

[/style]

 

Il form inserito nel documento (deve avre come name quello tulizzato nel javascript e applicata la classe del CSS)

<form name="data">
<input type="text" name="visualizza" size="110" class="date">
</form>

 

E infine la chiamata on load nel tag body

[body onLoad="getTime()"]

 

Qui potete visualizzare l'esempio e il codice

Invia una domanda o un commento sull'articolo

I campi obbligatori sono segnalati *

*

*



 




Questo sito è totalmente privo di pubblicità, se volete sostenere questa inziativa, potete scegliere di fare una piccola donazione libera:



© 2009 - 2024 Impronte digitali di Luca Frassineti. Tutti i diritti riservati.