Newsgroup: it.comp.lang.javascript
Titolo: Timer modificato da me ..abbiate pietà !

Ciao a tutti
Prima era cosi :
e mi sentivo fiero ed orgoglioso per essere riuscito solamente inserendo :
timeSSm.length-1 a far sparire i decimali dei millisecondi che il video non
refreshava ...
function clockUpdate () {
    var now = new Date()
    var timeHH = now.getHours();
    var timeMM = now.getMinutes()
    var timeSS = now.getSeconds()
    var msec = now.getTime ()
    var timeSSm = msec - 1000 * Math.floor (msec / 1000)
    timeSSm = '00' + timeSSm
    timeSSm = timeSSm.substring(timeSSm.length-3, timeSSm.length-1)
    var timeString = ((timeHH < 10) ? '0' : '') + timeHH
   + ':' + ((timeMM < 10) ? '0' : '') + timeMM
   + ':' + ((timeSS < 10) ? '0' : '') + timeSS
   + '.' + timeSSm
    if (this.output) {
 this.output.value = timeString
    } else {
 self.status = timeString
    }
}
Poi, siccome mi serve un cronometro che se ne freghi dell'ora di sistema e
parta da zero "onclick" ho iniziato a modificare partendo dalla funzione
clockUpdate che è diventata questa : (vedi modifiche var timeSS e var
timeString)
function clockUpdate () {
    var now = new Date()
    var timeHH = now.getHours();
    var timeMM = now.getMinutes()
    var timeSS = now.getTime (if msec>1000 sec=sec+1)
    var msec = now.getTime ()
    var timeSSm = msec - 1000 * Math.floor (msec / 1000)
    timeSSm = '00' + timeSSm
    timeSSm = timeSSm.substring(timeSSm.length-3, timeSSm.length-1)
    var timeString = '00'
   + ':' + '00'
   + ':' + ((timeSS < 10) ? '0' : '') + timeSS
   + '.' + timeSSm
    if (this.output) {
 this.output.value = timeString
    } else {
 self.status = timeString
    }
}
Spiego cosa sta alla base del mio insano gesto :
Ho pensato: getSeconds, getHours e getMinutes mi stanno sullo stomaco ed i
valori me li faccio da solo partendo da getTime con un if (if msec>1000
sec=sec+1)......if sec>60 min=min+1....
Ho anche sostituito il valore di var timeString mettendo tutto a '00'
Risultato...una bella ciofeca.
Cosa importante inoltre, e quì proprio non saprei da dove partire, dovrò
memorizzare tutto il clock al momento del click Stop allo scopo di ripartire
dal tempo memorizzato e non dall'ora di sistema !!
Abbiate pietà di me !!
se volete vedere lo script completo in versione ancora funzionante (prima
del mio insano gesto) 
http://web.tiscalinet.it/valpochess/test/matti_dia.htm
Grazie
Marco

Ho pensato che forse potrei lasciare intatto l'orologio con la
visualizzazione dell'ora di sistema ( devo solo riuscire a togliere la
visualizzazione del campo modulo intervallo )
e per calcolare il tempo impiegato credo sia meglio usare questo sistema :
se io collego al click di un pulsante il costruttore new Date e poi getTime
( che dovrebbe restituirmi la rappresentazione interna di una data tutta in
millisecondi  ) poi al secondo click ( o a quello di un altro pulsante  )
faccio riferimento ad un secondo new Date ....poi posso confrontare i due e
ricavare un delta ???
Sarebbe un delta in millisecondi ma tanto poi lo devo trasformare in
puteggio tipo "flipper" e mi fa pure comodo ;)))
Date.parse non centra nulla vero? o lo posso utilizzare ? oppure Date.UTC
subito dopo new Date ?
La sintassi di collegamento ai due pulsanti e di definizione del delta
qual'è ?
Ciao
Marco

 millisecondi  ) poi al secondo click ( o a quello di un altro
