Visualizzazione risultati 1 fino 2 di 2

Discussione: Countdown

  1. #1
    Guest

    Predefinito Countdown

    Sul mio forum ho creato un coutdown, che viene richiamato grazie al mio account qui su Altervista.
    Il codice l'ho trovato su google e funziona perfettamente, però c'è una cosa che non mi piace.
    In pratica quando i giorni, le ore o i minuti vanno a zero non esce scritto 0 giorni/ore/minuti, semplicemente quella voce scompare e lascia solo le altre.

    ESEMPIO
    Esce scritto: 2 giorni, 3 minuti
    Cosa vorrei: 2 giorni, 0 ore, 3 minuti

    Penso non sia una cosa difficile ma io non sono pratica di codici quindi preferisco chiedere!

    Questo è il codice
    Codice:
    <p><script type="text/javascript">
    //######################################################################################
    // Author: ricocheting.com
    // Version: v2.0
    // Date: 2011-03-31
    // Description: displays the amount of time until the "dateFuture" entered below.
    
    // NOTE: the month entered must be one less than current month. ie; 0=January, 11=December
    // NOTE: the hour is in 24 hour format. 0=12am, 15=3pm etc
    // format: dateFuture1 = new Date(year,month-1,day,hour,min,sec)
    // example: dateFuture1 = new Date(2003,03,26,14,15,00) = April 26, 2003 - 2:15:00 pm
    
    dateFuture1 = new Date(ANNO,MESE,GIORNO,ORE,MINUTI,SECONDI);
    
    // TESTING: comment out the line below to print out the "dateFuture" for testing purposes
    //document.write(dateFuture +"<br />");
    
    
    //###################################
    //nothing beyond this point
    function GetCount(ddate,iid){
    
           dateNow = new Date();        //grab current date
           amount = ddate.getTime() - dateNow.getTime();        //calc milliseconds between dates
           delete dateNow;
    
           // if time is already past
           if(amount < 0){
                   document.getElementById(iid).innerHTML="FRASE";
           }
           // else date is still good
           else{
                   days=0;hours=0;mins=0;out="";
    
                   amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs
    
                   days=Math.floor(amount/86400);//days
                   amount=amount%86400;
    
                   hours=Math.floor(amount/3600);//hours
                   amount=amount%*3600;
    
                   mins=Math.floor(amount/60);//minutes
                   amount=amount%60;
    
                   if(days != 0){out += days +" "+((days==1)?"giorno":"giorni")+", ";}
                   if(hours != 0){out += hours +" "+((hours==1)?"ora":"ore")+", ";}
                   out += mins +" "+((mins==1)?"minuto":"minuti")+", ";
                   out = out.substr(0,out.length-2);
                   document.getElementById(iid).innerHTML=out;
    
                   setTimeout(function(){GetCount(ddate,iid)}, 1000);
           }
    }
    
    window.onload=function(){
           GetCount(dateFuture1, 'countbox1');
           //you can add additional countdowns here (just make sure you create dateFuture2 and countbox2 etc for each)
    };
    </script>
    <span id="countbox1" style="font-weight:bold; font-size:GRANDEZZApx; color: #COLORE"></span></p>

  2. #2
    Kevinoo non è connesso Utente giovane
    Data registrazione
    14-05-2007
    Residenza
    Burano (Venezia)
    Messaggi
    94

    Predefinito

    Citazione Originalmente inviato da TotalDramaSeries Visualizza messaggio
    Penso non sia una cosa difficile ma io non sono pratica di codici quindi preferisco chiedere!
    Ciao, molto semplice...

    Codice:
    <p><script type="text/javascript">
    //######################################################################################
    // Author: ricocheting.com
    // Version: v2.0
    // Date: 2011-03-31
    // Description: displays the amount of time until the "dateFuture" entered below.
    
    // NOTE: the month entered must be one less than current month. ie; 0=January, 11=December
    // NOTE: the hour is in 24 hour format. 0=12am, 15=3pm etc
    // format: dateFuture1 = new Date(year,month-1,day,hour,min,sec)
    // example: dateFuture1 = new Date(2003,03,26,14,15,00) = April 26, 2003 - 2:15:00 pm
    
    dateFuture1 = new Date(ANNO,MESE,GIORNO,ORE,MINUTI,SECONDI);
    
    // TESTING: comment out the line below to print out the "dateFuture" for testing purposes
    //document.write(dateFuture +"<br />");
    
    
    //###################################
    //nothing beyond this point
    function GetCount(ddate,iid){
    
           dateNow = new Date();        //grab current date
           amount = ddate.getTime() - dateNow.getTime();        //calc milliseconds between dates
           delete dateNow;
    
           // if time is already past
           if(amount < 0){
                   document.getElementById(iid).innerHTML="FRASE";
           }
           // else date is still good
           else{
                   days=0;hours=0;mins=0;out="";
    
                   amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs
    
                   days=Math.floor(amount/86400);
                   amount=amount%86400;
    
                   hours=Math.floor(amount/3600);
                   amount=amount%3600;
    
                   mins=Math.floor(amount/60);
                   amount=amount%60;
    
                   out += days +" "+((days==1)?"giorno":"giorni")+", ";
                   out += hours +" "+((hours==1)?"ora":"ore")+", ";
                   out += mins +" "+((mins==1)?"minuto":"minuti")+", ";
                   out = out.substr(0,out.length-2);
                   document.getElementById(iid).innerHTML=out;
    
                   setTimeout(function(){GetCount(ddate,iid)}, 1000);
           }
    }
    
    window.onload=function(){
           GetCount(dateFuture1, 'countbox1');
           //you can add additional countdowns here (just make sure you create dateFuture2 and countbox2 etc for each)
    };
    </script>
    "sempre avanti mai indietro, nemmeno per prendere la rincorsa!"

    Associazione Vogaepara Burano

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •