Foros del Web » Programando para Internet » Javascript »

Cronometro para varios usuarios

Estas en el tema de Cronometro para varios usuarios en el foro de Javascript en Foros del Web. Hola, Tengo este cronometro: http://www.mundojavascript.com/reloj...onometro.shtml y necesito contar para varios usuarios a la vez en una misma página, su tiempo, es decir: Usuario 1: cronometro ...
  #1 (permalink)  
Antiguo 05/07/2009, 12:32
 
Fecha de Ingreso: junio-2006
Mensajes: 330
Antigüedad: 17 años, 11 meses
Puntos: 4
Cronometro para varios usuarios

Hola, Tengo este cronometro:

http://www.mundojavascript.com/reloj...onometro.shtml

y necesito contar para varios usuarios a la vez en una misma página, su tiempo, es decir:
Usuario 1: cronometro 1
Usuario 2: cronometro 2
Usuario 3: cronometro 3
Usuario 4: cronometro 4
Usuario 5: cronometro 5

traté de carmbiarlo pero lo que me sucede es que si le doy a contar al primer cronometro, y luego sucesivamente a los demás, vuelve a inciarse todos y necesito que sean indepedientes, para luego guardar sus tiempos.

Gracias...
  #2 (permalink)  
Antiguo 05/07/2009, 13:52
Avatar de Legoltaz  
Fecha de Ingreso: agosto-2008
Mensajes: 325
Antigüedad: 15 años, 9 meses
Puntos: 6
Respuesta: Cronometro para varios usuarios

¿Podrías poner aquí el código?
  #3 (permalink)  
Antiguo 05/07/2009, 21:09
 
Fecha de Ingreso: junio-2006
Mensajes: 330
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Cronometro para varios usuarios

si claro es este:

<script language="javascript">
//CRONOMETRO
//Autor: Iván Nieto Pérez
//Este script y otros muchos los puedes
//encontrar en
//MundoJavascript.com
var CronoID = null
var CronoEjecutandose = false
var decimas, segundos, minutos

function DetenerCrono (){
if(CronoEjecutandose)
clearTimeout(CronoID)
CronoEjecutandose = false
}

function InicializarCrono () {
//inicializa contadores globales
decimas = 0
segundos = 0
minutos = 0

//pone a cero los marcadores
document.crono.display.value = '00:00:0'
document.crono.parcial.value = '00:00:0'
}

function MostrarCrono () {

//incrementa el crono
decimas++
if ( decimas > 9 ) {
decimas = 0
segundos++
if ( segundos > 59 ) {
segundos = 0
minutos++
if ( minutos > 99 ) {
alert('Fin de la cuenta')
DetenerCrono()
return true
}
}
}

//configura la salida
var ValorCrono = ""
ValorCrono = (minutos < 10) ? "0" + minutos : minutos
ValorCrono += (segundos < 10) ? ":0" + segundos : ":" + segundos
ValorCrono += ":" + decimas

document.crono.display.value = ValorCrono

CronoID = setTimeout("MostrarCrono()", 100)
CronoEjecutandose = true
return true
}

function IniciarCrono () {
DetenerCrono()
InicializarCrono()
MostrarCrono()
}

function ObtenerParcial() {
//obtiene cuenta parcial
document.crono.parcial.value = document.crono.display.value
}

</script>

<form name="crono">
<div align="center"><center>
<p><input type="text" size="8" name="display" value="00:00:0"><input type="button" name="Iniciar" value=" Iniciar " onClick="IniciarCrono()"></p>
<p><input type="text" size="8" name="parcial" value="00:00:0 "> <input type="button" name="Parcial" value="Parcial" onClick="ObtenerParcial()"></p>
<p><input type="button" name="Parar" value=" Parar " onClick="DetenerCrono()"> <input type="button" name="Cero" value=" Cero " onClick="DetenerCrono(); InicializarCrono()"></p>
</center></div>
</form>
  #4 (permalink)  
Antiguo 05/07/2009, 21:22
 
Fecha de Ingreso: junio-2006
Mensajes: 330
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Cronometro para varios usuarios

Te espongo como lo modifique, estoy probando solo con dos usuarios para probar, pero son muchos más:

<script language="javascript">

var CronoID1 = null
var CronoEjecutandose1 = false
var CronoID2 = null
var CronoEjecutandose2 = false
var decimas, segundos, minutos

function DetenerCrono (valor){
if(valor == 1) {
if(CronoEjecutandose1)
clearTimeout(CronoID1)
CronoEjecutandose1 = false
}

if(valor == 2) {
if(CronoEjecutandose2)
clearTimeout(CronoID2)
CronoEjecutandose2 = false
}
}

function InicializarCrono (valor) {
//inicializa contadores globales
decimas = 0
segundos = 0
minutos = 0

//pone a cero los marcadores
if(valor == 1) {
document.crono.display1.value = '00:00:0'
}

if(valor == 2) {
document.crono.display2.value = '00:00:0'
}
}

var verificar = 5;
var total = 0;

function MostrarCrono (valor) {
var valor;
//incrementa el crono
decimas++
if (decimas > 9) {
decimas = 0
segundos++
if(segundos == verificar) {
alert("Han pasado 5 segundos");
verificar += 5;
alert(segundos);
}
if (segundos > 59) {
segundos = 0
minutos++
if(minutos > 99) {
alert('Fin de la cuenta')
DetenerCrono(valor)
return true
}
}
}

//configura la salida
var ValorCrono = ""
ValorCrono = (minutos < 10) ? "0" + minutos : minutos
ValorCrono += (segundos < 10) ? ":0" + segundos : ":" + segundos
ValorCrono += ":" + decimas

if(valor == 1) {
document.crono.display1.value = ValorCrono
CronoID1 = setTimeout("MostrarCrono(1)", 100)
CronoEjecutandose1 = true
}

if(valor == 2) {
document.crono.display2.value = ValorCrono
CronoID2 = setTimeout("MostrarCrono(2)", 100)
CronoEjecutandose2 = true
}


return true
}

function IniciarCrono(valor) {
InicializarCrono(valor)
MostrarCrono(valor)
}

</script>

<form name="crono">
<div align="center"><center>
<p>Usuario 1: <input type="text" size="8" name="display1" value="00:00:0"><input type="button" name="Iniciar1" value=" Iniciar " onClick="IniciarCrono(1)"><input type="button" name="Parar1" value=" Parar " onClick="DetenerCrono(1)"> <input type="button" name="Cero1" value=" Cero " onClick="DetenerCrono(1); InicializarCrono(valor)"></p>
<p>Usuario 2:<input type="text" size="8" name="display2" value="00:00:0"><input type="button" name="Iniciar2" value=" Iniciar " onClick="IniciarCrono(2)"><input type="button" name="Parar2" value=" Parar " onClick="DetenerCrono(2)"> <input type="button" name="Cero2" value=" Cero " onClick="DetenerCrono(2); InicializarCrono(2)"></p>
</center></div>
</form>
  #5 (permalink)  
Antiguo 05/07/2009, 21:24
 
Fecha de Ingreso: junio-2006
Mensajes: 330
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Cronometro para varios usuarios

La idea es que se inicien cada uno por independientemente e igualmente se detengan..
  #6 (permalink)  
Antiguo 06/07/2009, 03:02
Avatar de Legoltaz  
Fecha de Ingreso: agosto-2008
Mensajes: 325
Antigüedad: 15 años, 9 meses
Puntos: 6
Respuesta: Cronometro para varios usuarios

Lo primero que se me ocurre es que hagas una función para cada contador.
  #7 (permalink)  
Antiguo 06/07/2009, 10:23
 
Fecha de Ingreso: junio-2006
Mensajes: 330
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Cronometro para varios usuarios

No creo que sea buena solución, porque son muchos usuarios máximo 30, por lo que imagínate... ¿Qué otra cosa se te ocurre?
  #8 (permalink)  
Antiguo 06/07/2009, 15:08
 
Fecha de Ingreso: junio-2006
Mensajes: 330
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Cronometro para varios usuarios

¿Cómo podría crear cronometros independientes?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:31.