2013-03-19 23 views
9

Sto sviluppando un'applicazione basata su Web per acquisire l'ora di inizio e l'ora di fine dall'ora di sistema, ma il mio problema principale è che non so come posso ottenere la durata, tra l'inizio e l'ora di fine per i tempi di inattività.Come si calcola una durata?

//Function to get current start time 
    var startTime = setInterval(function() { start() }, 1000); 

    function start() { 
    var startDate = new Date(); 
    var timeStart = startDate.toLocaleTimeString(); 
    $("#setCount").html(timeStart); 
} 

risposta

1

Utilizzare questo ingegnoso jQuery plugin: http://timeago.yarp.com/

Timeago è un plugin jQuery che rende facile per supportare automaticamente aggiornamento timestamp sfocati (ad esempio, "4 minuti fa" o "circa 1 giorno fa"). Scarica, guarda gli esempi e divertiti.

Hai aperto questa pagina circa un minuto fa. (Questo aggiornerà ogni minuto . Aspettalo.)

Questa pagina è stata modificata l'ultima volta 13 giorni fa.

Ryan è nato 34 anni fa.

4

Per misurare semplicemente il tempo trascorso, utilizzare Date.getTime() che emette l'ora corrente in millisecondi da unix epoca.

È possibile sottrarre un valore da un altro per ottenere la durata.

Esempio:

var startTime = new Date().getTime(); 

setTimeout(function() { 
    var endTime = new Date().getTime(); 
    console.log("duration [ms] = " + (endTime-startTime)); 
}, 1500); 

uscita sarebbe, ovviamente: duration [ms] = 1500 (o di coppia ms meno o più).

19

Vuoi dire questo:

var date1 = new Date(); 
var date2 = new Date(); 
var diff = date2 - date1; //milliseconds interval 

upd

controllo JSFiddle

+0

sì uomo, ma posso essere in grado di ottenere il tempo che inizierà dall'inizio di un tempo di inattività che continuerà a contare fino al termine dei tempi di inattività? Utilizzando il tuo metodo? –

+1

non hai davvero quello che ti serve, ma hai aggiunto il link a JSFiddle, spero che ti possa aiutare – Sergio

9

Aggiornamento:

Se si desidera visualizzare la differenza di tempo per l'utente, Serigo'smethod lo farà. Ma se è per qualsiasi scopo di sviluppo, le funzioni di seguito renderanno la vita facile.


Volevo solo informarti su queste funzioni di utilità della console.

mettere questa riga in cima alla vostra applicazione codice di inizializzazione console.time('appLifeTime');

Mettere questo in cui mai si sente che la vostra applicazione finisce. console.timeEnd('appLifeTime');

console.time('appLifeTime'); 

setTimeout(function delay(){ 
    console.timeEnd('appLifeTime'); 
}, 1500); 

Il pezzo di codice sopra stamperà, appLifeTime: 1500.583ms.

AFAIK, console.time & console.timeEnd funziona in firefox (con firebug) & browser Webkit (chrome, safari).

Problemi correlati