Simulates a stop watch and displays the elapsed time
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML>
<HEAD> <TITLE>JsLib 1.3 - Exemple - chrono.js</TITLE> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> <META NAME="Author" CONTENT="Etienne CHEVILLARD"> <!-- chrono.js --> <SCRIPT TYPE="text/javascript" LANGUAGE="Javascript"> /* chrono.js * Role : simule un chronometre et affiche le temps ecoule * Projet : JsLib * Auteur : Etienne CHEVILLARD (echevillard@users.sourceforge.net) * Version : 1.3 * Creation : 25/04/2001 * Mise a jour : 23/02/2005 */
// --- Variables globales ---
// variables pour la gestion du chronometre var chrono_demarre=false; var chrono_ecoule=0; var chrono_depart=0; var chrono_dernier=0;
// variables pour la mise a jour dynamique var chrono_champ; var chrono_timeout;
// --- Fonctions ---
// indique si le chronometre est demarre ou non function actifChrono() { return (chrono_demarre); } // fin actifChrono()
// arrete le chronometre function arreterChrono() { if (chrono_demarre) { chrono_dernier=(new Date()).getTime(); chrono_ecoule+=(chrono_dernier-chrono_depart); chrono_demarre=false; } return true; } // fin arreterChrono()
// active la mise a jour dynamique du temps mesure pour le champ specifie function chargerChronoDyna(champ) { if (champ) chrono_champ=eval(champ); chrono_champ.value=tempsChrono(); chrono_timeout=window.setTimeout("chargerChronoDyna()", 10); return true; } // fin chargerChronoDyna(champ)
// desactive la mise a jour dynamique du temps mesure precedemment activee function dechargerChronoDyna() { window.clearTimeout(chrono_timeout); return true; } // fin dechargerChronoDyna()
// demarre le chronometre function demarrerChrono() { if (!chrono_demarre) { chrono_depart=(new Date()).getTime(); chrono_demarre=true; } return true; } // fin demarrerChrono()
// remet a zero le chronometre si celui-ci est arrete function RAZChrono() { if (!chrono_demarre) { chrono_ecoule=0; chrono_depart=0; chrono_dernier=0; } return true; } // fin RAZChrono()
// retourne le temps mesure par le chronometre au format HH:MM:SS:CC function tempsChrono() { var cnow; if (chrono_demarre) { chrono_dernier=(new Date()).getTime(); cnow=new Date(chrono_ecoule+(chrono_dernier-chrono_depart)); } else { cnow=new Date(chrono_ecoule); } var ch=parseInt(cnow.getHours()) - 1; var cm=cnow.getMinutes(); var cs=cnow.getSeconds(); var cc=parseInt(cnow.getMilliseconds()/10); if (cc<10) cc="0"+cc; if (cs<10) cs="0"+cs; if (cm<10) cm="0"+cm; return (ch+":"+cm+":"+cs+":"+cc); } // fin tempsChrono()
<NOSCRIPT> <P><I>Erreur : votre navigateur ne reconnait pas le Javascript ou est configuré pour ne pas prendre en compte le code Javascript. Dans ce dernier cas, vous pouvez modifier la configuration dans les préférences/options de votre navigateur.</I> <HR> </NOSCRIPT>