Visualizzazione risultati 1 fino 13 di 13

Discussione: Immettere mesi e anni in un countup

  1. #1
    Guest

    Predefinito Immettere mesi e anni in un countup

    Salve amici,
    ho cercato un po' ma niente...
    Ho scaricato uno script di utilità html: il countup da una certa data, dunque nello script conta solo i giorni ma io vorrei che contasse anche mesi e anni.

    Lo script è questo:

    Codice HTML:
    <script language="JavaScript1.2">
    //Nascita sito web
    //Prelevato ed illustrato su  http://www.web-link.it
    //Dynamic countup Script- © Dynamic Drive (www.dynamicdrive.com)
    //For full source code, 100's more DHTML scripts, and TOS,
    //visit http://www.dynamicdrive.com
    
    function setcountup(theyear,themonth,theday){
    yr=theyear;mo=themonth;da=theday
    }
    
    //////////CONFIGURE THE countup SCRIPT HERE//////////////////
    
    //STEP 1: Configure the date to count up from, in the format year, month, day:
    //This date should be less than today
    setcountup(2007,11,24)
    
    //STEP 2: Configure the below 5 variables to set the width, height, background color, and text style of the countup area
    var countupwidth='98%'
    var countupheight='20px' //applicable only in NS4
    var countupbgcolor='E7EFFF'
    
    //////////DO NOT EDIT PASS THIS LINE//////////////////
    
    var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
    var crosscount=''
    
    function start_countup(){
    if (document.layers)
    document.countupnsmain.visibility="show"
    else if (document.all||document.getElementById)
    crosscount=document.getElementById&&!document.all?document.getElementById("countupie") : countupie
    countup()
    }
    
    if (document.all||document.getElementById)
    document.write('<span id="countupie" style="width:'+countupwidth+'; background-color:'+countupbgcolor+'"></span>')
    
    window.onload=start_countup
    
    
    function countup(){
    var today=new Date()
    var todayy=today.getYear()
    if (todayy < 1000)
    todayy+=1900
    var todaym=today.getMonth()
    var todayd=today.getDate()
    var todayh=today.getHours()
    var todaymin=today.getMinutes()
    var todaysec=today.getSeconds()
    var todaystring=montharray[todaym]+" "+todayd+", "+todayy+" "+todayh+":"+todaymin+":"+todaysec
    paststring=montharray[mo-1]+" "+da+", "+yr
    dd=Date.parse(todaystring)-Date.parse(paststring)
    dday=Math.floor(dd/(60*60*1000*24)*1)
    dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1)
    dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1)
    dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1)
    
    if (dsec <= 9) dsec = "0"+dsec
    
    else if (dhour <= 9 ) dhour = "0"+dhour
    
    else if (dmin <= 9 ) dmin = "0"+dmin
    
    if (document.layers){
    document.countupnsmain.document.countupnssub.document.write(dday+"mesi e "+dday+" giorni")
    document.countupnsmain.document.countupnssub.document.close()
    }
    else if (document.all||document.getElementById)
    crosscount.innerHTML="Sito online da: "+qui vanno i mesi+" mesi e "+dday+" giorni"
    
    setTimeout("countup()",1000)
    }
    </script>
    Dunque mi sapreste aggiungere mesi e anni?

    Grazie...

    Ciao...
    Ultima modifica di heidi52 : 14-01-2008 alle ore 15.33.47

  2. #2
    Guest

    Predefinito

    non è html JavaScript1.2 ;) credo tu abbia sbagliato sezione, se vuoi ho trovato queste altre cosette cercando su google:

    Customize countdown

    altri conti alla rovescia

  3. #3
    Guest

    Predefinito

    Mmm, ma questo è un countup, non un countdown...


    Ciao...

  4. #4
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Infatti il primo link funziona in tutti e due i modi (per esempio: dal 28 febbraio 2007).
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  5. #5
    Guest

    Predefinito

    Si ma mi mostra giorni ore minuti e secondi, ma io voglio anni, mesi e giorni.
    Se mi editi lo script che ho postato sopra inserendo mesi e anni è meglio.

    Ciao...
    Ultima modifica di heidi52 : 15-01-2008 alle ore 11.23.50

  6. #6
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Basta che togli al numero dei giorni il numero dei giorni dei mesi precedenti (28, 29, 30 o 31) per trovare i mesi. Prima però dovrai trovare gli anni togliendo il numero dei giorni che ci sono negli anni precedenti (365 o 366).
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  7. #7
    Guest

    Predefinito

    Queste cose non le so fare, me lo fai su quello script che ho postato sopra?
    Grazie.

    Ciao...

  8. #8
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Ecco cosa si può ottenere riciclando uno script già apparso sul forum:
    - la vecchia versione (countdown): http://dementialsite.altervista.org/...down-lungo.htm
    - la nuova versione (countup): http://dementialsite.altervista.org/...ntup-lungo.htm

    Statemi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  9. #9
    Guest

    Predefinito

    Ok grazie 2000 dementialsite.

    EDIT: Macché, non funziona, lo posto qui e voi correggetemelo:


    Questo nella head:
    Codice HTML:
    <script language="JavaScript">
    /*******************************************/
    /** Gli anni sono "result[5]"             **/
    /** Le ore sono "result[2]"               **/
    /** I minuti sono "result[1]"             **/
    /** I secondi sono "result[0]"            **/
    /*******************************************/
    /** parametro refDate: la data e ora (come oggetto Date) in cui il count down arriva a zero */
    function countDown (refDate)
    {
       // la data attuale
       var now = new Date();
       
       // il risultato
       var result = new Array (0, // anni [0]
          0, // mesi [1]
          0, // giorni [2]
          0, // ore [3]
          0, // minuti [4]
          0 // secondi [5]
       );
    
       // numero di giorni nei vari mesi
       var daysInMonths = new Array (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
    
       // calcola i secondi
       var s2 = now.getSeconds ();
       var s1 = refDate.getSeconds ();
       if (s1 <= s2) result[0] = s2 - s1;
       else { result[0] = 60 + s2 - s1; result[1] = -1; }
    
       // calcola i minuti
       var m2 = now.getMinutes ();
       var m1 = refDate.getMinutes ();
       if (m1 <= m2) result[1] += m2 - m1;
       else { result[1] += 60 + m2 - m1; result[2] = -1; }
    
       // calcola le ore
       var h2 = now.getHours ();
       var h1 = refDate.getHours ();
       if (h1 <= h2) result[2] += h2 - h1;
       else { result[2] += 24 + h2 - h1; result[3] = -1; }
    
       // calcola i giorni
       var d2 = now.getDate ();
       var d1 = refDate.getDate ();
       if (d1 <= d2) result[3] += d2 - d1;
       else 
       { 
          result[3] += daysInMonths[(12 + now.getMonth()) % 12] + (now.getMonth() == 1 && now.getFullYear () % 4 == 0 ? 1 : 0) + d2 - d1;
          result[4] = -1;
       }
    
       // calcola i mesi
       var mt2 = now.getMonth ();
       var mt1 = refDate.getMonth ();
       if (mt1 <= mt2) result[4] += mt2 - mt1;
       else { result[4] += 12 + mt2 - mt1; result[5] = -1 }
    
       // calcola gli anni
       var y2 = now.getFullYear ();
       var y1 = refDate.getFullYear ();
       result[5] += y2 - y1;
    
       return result;
    }
    
    function formatta ()
    {
       var result = countDown (new Date (2007, 10, 24));
       document.getElementById ("countdown").innerHTML ='Sito online da: ' +result[4]+ ' mesi e ' +result[3]+ ' giorni' ;
    
    }
    </script>
    E questo dove voglio che appaia:
    Codice HTML:
    <span id="countdown"></span>
    Ciao...
    Ultima modifica di heidi52 : 15-01-2008 alle ore 19.41.15

  10. #10
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    L'hai messo in qualche pagina del tuo sito, così almeno da vederne l'output?

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  11. #11
    Guest

    Predefinito

    Il problema di ora è che l'ho fatto con FrontPage e nell'anteprima FrontPage me lo fa vedere, invece nel browser no.
    Sapete aiutarmi?

    Grazie...

    Ciao...
    Ultima modifica di heidi52 : 16-01-2008 alle ore 20.18.42

  12. #12
    Ospite Guest

    Predefinito

    a me a volte frontpage mette "la mano" negli script JS facendoli poi non funzionare.......

    cmq prova ad inserirlo con il notepad...

  13. #13
    Guest

    Predefinito

    Ora funziona tutto bene, l'errore era che nella pagina non avevo inserito i tag <html> e </html>.

    Ciao...

Regole di scrittura

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