Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    cronometro javascript con millisecondi

    salve a tutti,premetto che sono un novizio di javascript.
    Sto costruendo il sito per la mia scuola calcio e nella home vorrei inserire un conto alla rovescia (tipo sito http://www.sscnapoli.it/client/render.aspx) .ho studiato i vari esempi che propone il sito, ma ho notato che nessuno script utilizza i millisecondi.in che modo posso risolvere tale problema?conoscete qualche esempio simile già sviluppato?
    Si può sviluppare in javascript o consigliate un altro linguggio?

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Benvenuto sul forum

    Da cronometrista permettimi un consiglio: lascia perdere i millisecondi, al massimo potresti prevedere il centesimo... mo solo per fini scenografici

    Inoltre avresti notevoli difficolta' di visualizzazione di un conteggio che li preveda, gia' e' difficile veder scorrere i decimi...

    Comunque, per pura didattica, un esempio di tempo che scorre all'indietro con i centesimi:
    codice:
    <script>
    hh = 0;
    mm = 0;
    ss = 10;
    cc = 0;
    function vedi() {
    	cc--;
    	if(cc<0) {
    		cc=99;
    		ss--;
    		if(ss<0) {
    			ss=59;
    			mm--;
    			if(mm<0) {
    				mm=59;
    				hh--;
    			}
    		}
    	}
    	if(hh+mm+ss+cc > 0) {
    		document.getElementById("tt").innerHTML = String(100+hh).substr(1)+":"+String(100+mm).substr(1)+":"+String(100+ss).substr(1)+","+String(100+cc).substr(1);
    		setTimeout("vedi()",10);
    	} else {
    		document.getElementById("tt").innerHTML = "Conteggio Terminato";
    	}
    }
    window.onload=vedi;
    </script>
    
    <div id="tt"></div>
    Sul mio pc e' lentissimo... i dieci secondi non passano mai, adattalo per i decimi, magari e' piu' realistico

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,132
    Vedi se questo può fare al caso tuo clicca qui oppure può essere adattato
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    grazie per il benvenuto, ho risolto in questo modo:



    !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" lang="it">
    <head>

    <title>Tempo mancante ad una data - Esempio JavaScript scaricato da HTML.it</title>
    <meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />
    <meta http-equiv="Content-Language" content="it" />
    <meta name="Robots" content="All" />
    <meta name="Description" content="HTML.it - il sito italiano sul Web publishing" />
    <meta name="Keywords" content="Ad ogni apertura di pagina questo script genera un differente colore di sfondo." />
    <meta name="Owner" content="HTML.it srl" />
    <meta name="Author" content="HTML.it srl" />
    <meta name="Copyright" content="HTML.it srl" />




    <title>Tempo mancante ad una data</title>


    <SCRIPT LANGUAGE=javascript type="text/javascript">
    <!--
    function countdown(){
    iniData= new Date(2009,9,31,18,00,00,000); // data inizio sequenza mesi-1 es. set=8

    oggi= new Date();
    //oggi.setHours(1,1,1,0) ;
    iniDataIt=iniData.getDate()+'-'+(iniData.getMonth()+1)+'-'+iniData.getFullYear()+' '+iniData.getHours()+':'+iniData.getMinutes()+':'+ iniData.getSeconds()+':'+iniData.getMilliseconds() ;
    milDif=(iniData-oggi);
    giorni=parseInt(milDif/86400000);
    milDif=milDif-(giorni*86400000); //millisecondi restanti talti i giorni
    ore=parseInt(milDif/3600000);
    milDif=milDif-(ore*3600000); //millisecondi restanti talti i giorni
    minuti=parseInt(milDif/60000);
    milDif=milDif-(minuti*60000); //millisecondi restanti talti i giorni
    secondi=parseInt(milDif/1000);
    milDif=milDif-(secondi*1000); //millisecondi restanti talti i giorni

    testo='Al giorno: '+iniDataIt+' mancano '+giorni+' giorni, '+ore+' ore, '+minuti+' minuti '+secondi+' secondi '+milDif+'millisecondi';
    //alert(testo); //commentare
    //return testo
    if (document.layers){
    document.layers.span1.document.write(testo);
    document.layers.span1.document.close();
    }else if (document.all){
    span1.innerHTML=testo;
    }
    setTimeout("countdown()",1)
    }

    //-->
    </SCRIPT>



    </head>
    <body>



    <div align="center" style="background-color:white;padding:3px">
    <BODY onLoad='countdown()'>



    <H1>TEMPO MANCANTE ALLA PROSSIMA PARTITA</H1></p>



    <span id="span1" style='position:top' >Qua' il testo </span></p>




    </div>







    <div align="center">
    [img]logo_htmlit.gif[/img]




    <span style="font-size:80%; color:gray">sponsor</span>
    <script language="javascript" type="text/javascript">
    <!--
    var browName = navigator.appName;
    var SiteID = 1;
    var ZoneID = 24;
    var browDateTime = (new Date()).getTime();
    if (browName=='Netscape')
    {
    document.write('<s'+'cript lang' + 'uage="jav' + 'ascript" src="http://adserver.html.it/a.aspx?ZoneID=' + ZoneID + '&amp;Task=Get&amp;IFR=False&amp;Browser=NETSCAPE4 &amp;PageID=90264&amp;SiteID=' + SiteID + '&amp;Random=' + browDateTime + '">'); document.write('</'+'scr'+'ipt>');
    }
    if (browName!='Netscape')
    {
    document.write('<s'+'cript lang' + 'uage="jav' + 'ascript" src="http://adserver.html.it/a.aspx?ZoneID=' + ZoneID + '&amp;Task=Get&amp;IFR=False&amp;PageID=90264&amp; SiteID=' + SiteID + '&amp;Random=' + browDateTime + '">'); document.write('</'+'scr'+'ipt>');
    }
    // -->
    </script>
    <noscript>
    <a href="http://adserver.html.it/a.aspx?ZoneID=24&amp;Task=Click&amp;Mode=HTML&amp; SiteID=1&amp;PageID=90264" target="_blank">
    </a>
    </noscript></div>



    </body>
    </html>

  5. #5
    è rimasto solo un problema,ogni secondo la scritta si muove cioè non è stabile,nel senso che se i millisecondi che restano sono di 3 cifre si allarga un pò,se sono di 2 si restringe con questo "brutto" effetto grafico.Come posso stabilizzare tale stringa?

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Usa un contenitore con dimensioni fisse



    <span id="span1" style='position:top;width:200px;' >Qua' il testo </span></p>

    Oppure nella mia risposta precedente c'e' un'altra possibilita'

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    grazie 1000 problema risolto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.