Estoy peleando con esto y decididamente me bloquee, asi que corto por lo sano y pregunto a los expertos.
La idea es la siguiente, crear un contador/timer que vaya de 0 a 1 y de 1 a 0, en forma indefinida, utilizando como intervalo el valor 0.1, es decir tendria que ir haciendo
0
0.1
0.2
0.3
...
0.9
1
comenzar a decrecer
0.9
0.8
...
0.2
0.1
0
y ahi de vuelta para arriba, el tiempo no importa, pueden ser 500ms, 1000ms ó 2000, la cosa es que se repita el ciclo
Hice las mil y un variantes, pero siempre fallaba algo, de los mejores resultados les paso este
Código HTML:
Ver original<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript"> //<![CDATA[
var i = 0;
var e = "";
var sint;
var sint2;
var z = 9;
function sube(){
if(i == 10){
document.getElementById("timer").innerHTML=1;
e = i;
corre();
}else{
document.getElementById("timer").innerHTML='0.'+i;
i++;
}
}
function baja(){
if(z == 0){
document.getElementById("timer").innerHTML=0;
e = '';
corre();
}else{
document.getElementById("timer").innerHTML='0.'+z;
z--;
}
}
function corre(){
if(e != ''){
clearInterval(sint);
sint2=setInterval("baja()",1000);
}else{
if(i < 11){
clearInterval(sint2);
sint=setInterval("sube()",1000);
}
}
}
window.onload = corre;
//]]>
cuando se ejecuta, empieza en 0, llega al 1, baja al 0....pero, ahi emppieza a alternar entre 0 y 1, de lo que se deduce que lo que la script hace en ese punto es alternar entre
document.getElementById("timer").innerHTML=1;
y
document.getElementById("timer").innerHTML=0;
lo que indica que los clearInterval no estarían funcionando y que las funciones sube() y baja() siguen ejecutándose con los valores de
z e
i clavados en 0 y 10 respectivamente.
A lo mejor con un pequeño toque (pequeño para quién sepa hacerlo) se corrije, o a lo mejor tomé el camino equivocado y hay que hacer otra cosa.
Como la criatura me superó, espero que algún padrino, se haga cargo
Saludos