• Viernes 8 de Noviembre de 2024, 20:19

Autor Tema:  Ayuda Con Cronometro Descendente No Refrescar  (Leído 4291 veces)

osw2

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Ayuda Con Cronometro Descendente No Refrescar
« en: Sábado 26 de Marzo de 2005, 22:40 »
0
hola me llamo osw  mi problema es el siguiente por favor quisiera que me ayuden con sus comentarios y con algunas soluciones:

bueno vera quiero hacer un cronometro descendente que empiese desde 2:00:00 minutos que que descienda 1:59:59  bueno el problema parece que no tiene nada de complicado este es mi codigo

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
   <title>Untitled</title>
   <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
decimas = 1
segundos = 1
minutos = 2

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

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

//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 == 0 ) {
   decimas = 9
   segundos--
   if ( segundos == 00 ) {
      segundos = 60
      minutos--
      if ( minutos == 00 ) {
               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>
</head>

<body>

<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>

</body>
</html>


bueno lo saque de una pagina que no me acuerdo pero lo modifique para que descienda por que originalmente era un cronometro asendente mi problema es esl siguiente

que el cronometro empiesa a marchar en forma normal digamos esta en 1:36:00 y se me ocurre refrescar la pagina, entonces en ese momento cuando refresca se queda en 1:36:00 pero cuando le pongo iniciar nuevamente se pone otra ves desde 2:00:00 lo que quisiera que me ayuden es que quiero que siga desde el punto en que se quedo antes de ser refrescado osea que si estubo en 1:36:00 y la pagina fue refrescada quiero que siga descendiendo pero desde ese lugar osea que continue el descenso y no se reinicie y comiense nuevamente desde 2:00:00 si no que siga 1:35:00

ojala puedan ayudarme porfavor

osw saludos

Kev

  • Miembro HIPER activo
  • ****
  • Mensajes: 654
    • Ver Perfil
Re: Ayuda Con Cronometro Descendente No Refrescar
« Respuesta #1 en: Martes 29 de Marzo de 2005, 02:16 »
0
Hola osw2
Bueno solo es agregar una 2 funciones sencillas.

Código: Text
  1.  
  2. &#60;html&#62;
  3. &#60;head&#62;
  4. &#60;title&#62;Untitled&#60;/title&#62;
  5. &#60;script language=&#34;javascript&#34;&#62;
  6. //CRONOMETRO
  7. //Autor: Iván Nieto Pérez
  8. //Este script y otros muchos los puedes
  9. //encontrar en
  10. //MundoJavascript.com
  11. var CronoID = null
  12. var CronoEjecutandose = false
  13. var decimas, segundos, minutos
  14. decimas = 1
  15. segundos = 1
  16. minutos = 2
  17.  
  18. function verify()
  19. {
  20.   if(document.crono.display.value != &#34;00:00:0&#34;)
  21.   {
  22.     cadTemp = document.crono.display.value;
  23.     vector = cadTemp.split(&#34;:&#34;);
  24.     decimas = parseInt(vector[2]);
  25.     segundos = parseInt(vector[1]);
  26.     minutos = parseInt(vector[0]);
  27.   }
  28.   else
  29.   {
  30.     decimas = 1;
  31.     segundos = 1;
  32.     minutos = 2;
  33.   }
  34. }
  35.  
  36. function DetenerCrono ()
  37. {
  38.   if(CronoEjecutandose)
  39.   clearTimeout(CronoID)
  40.   CronoEjecutandose = false
  41. }
  42.  
  43. function InicializarCrono ()
  44. {
  45.   //inicializa contadores globales
  46.   decimas = decimas;
  47.   segundos = segundos;
  48.   minutos = minutos;
  49.   //pone a cero los marcadores
  50.   document.crono.display.value = '00:00:0';
  51.   document.crono.parcial.value = '00:00:0';
  52. }
  53.  
  54. function MostrarCrono ()
  55. {
  56.   //incrementa el crono
  57.   decimas--
  58.   if ( decimas == 0 )
  59.   {
  60.     decimas = 9
  61.     segundos--
  62.     if ( segundos == 00 )
  63.     {
  64.       segundos = 60
  65.       minutos--
  66.       if ( minutos == 00 )
  67.       {
  68.         alert('Fin de la cuenta')
  69.         DetenerCrono()
  70.         return true
  71.       }
  72.     }
  73.   }
  74.   //configura la salida
  75.   var ValorCrono = &#34;&#34;
  76.   ValorCrono = (minutos &#60; 10) ? &#34;0&#34; + minutos : minutos
  77.   ValorCrono += (segundos &#60; 10) ? &#34;:0&#34; + segundos : &#34;:&#34; + segundos
  78.   ValorCrono += &#34;:&#34; + decimas
  79.  
  80.   document.crono.display.value = ValorCrono
  81.  
  82.   CronoID = setTimeout(&#34;MostrarCrono()&#34;, 100)
  83.   CronoEjecutandose = true
  84.   return true
  85. }
  86.  
  87. function IniciarCrono()
  88. {
  89.   DetenerCrono()
  90.   InicializarCrono()
  91.   MostrarCrono()
  92. }
  93.  
  94. function ObtenerParcial()
  95. {
  96.   //obtiene cuenta parcial
  97.   document.crono.parcial.value = document.crono.display.value
  98. }
  99.  
  100. function PoneraCero()
  101. {
  102.   decimas = 1;
  103.   segundos = 1;
  104.   minutos = 2;
  105. }
  106. &#60;/script&#62;
  107. &#60;/head&#62;
  108.  
  109. &#60;body onload=&#34;verify();&#34;&#62;
  110. &#60;form name=&#34;crono&#34;&#62;
  111.   &#60;div align=&#34;center&#34;&#62;&#60;center&#62;
  112.     &#60;p&#62;
  113.       &#60;input type=&#34;text&#34; size=&#34;8&#34; name=&#34;display&#34; value=&#34;00:00:0&#34;&#62;
  114.       &#60;input type=&#34;button&#34; name=&#34;Iniciar&#34; value=&#34; Iniciar &#34; onClick=&#34;IniciarCrono()&#34;&#62;
  115.     &#60;/p&#62;
  116.     &#60;p&#62;
  117.     &#60;input type=&#34;text&#34; size=&#34;8&#34; name=&#34;parcial&#34; value=&#34;00:00:0 &#34;&#62;
  118.     &#60;input type=&#34;button&#34; name=&#34;Parcial&#34; value=&#34;Parcial&#34; onClick=&#34;ObtenerParcial()&#34;&#62;
  119.     &#60;/p&#62;
  120.     &#60;p&#62;
  121.     &#60;input type=&#34;button&#34; name=&#34;Parar&#34; value=&#34; Parar &#34; onClick=&#34;DetenerCrono()&#34;&#62;
  122.     &#60;input type=&#34;button&#34; name=&#34;Cero&#34; value=&#34; Cero &#34; onClick=&#34;DetenerCrono(); InicializarCrono(); PoneraCero();&#34;&#62;
  123.     &#60;/p&#62;
  124.   &#60;/center&#62;
  125.   &#60;/div&#62;
  126. &#60;/form&#62;
  127.  
  128. &#60;/body&#62;
  129. &#60;/html&#62;
  130.  
  131.  

Acostumbrate siempre a sangrar el código, asi si se entiende, es solo una sugerencia.

 :comp:  :hola:
Salu2
La teoria es asesinada tarde o temprano por la experiencia
Albert Einstein
Kev - 3 DCE
-----------------------------------------------------
Articulos:
Convertir texto a imagen en ASP.NET
Trabajando con el Global.asax

Untouchable

  • Nuevo Miembro
  • *
  • Mensajes: 1
  • Nacionalidad: bo
    • Ver Perfil
Cronometro que no pare de contar al refrescar la pagina
« Respuesta #2 en: Martes 26 de Mayo de 2009, 05:15 »
0
Muy buena la respuesta, basados en el mismo cronometro, habria forma de que cuando se resfresca la pagina o cuando se va a otra pagina el cronometro continue corriendo hacia atras en el mismo tiempo en el que se cambio o refresco la pagina?