Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Javascript (http://www.forosdelweb.com/f13/)
-   -   Sumar valor cada segundo a un objeto (http://www.forosdelweb.com/f13/sumar-valor-cada-segundo-objeto-581530/)

Chupytoloco 30/04/2008 08:02

Sumar valor cada segundo a un objeto
 
Buenas de nuevo, he conseguido que esta funcion sume el valor que pongo en la variable "valor" cada segundo a un numero, ahora bien, el problema lo tengo cuando quiero mostrar en vez de un numero en la pantalla, que sean 2 y se sumen con diferentes valores.

Se me ocurre hacer de todo una funcion que por parametros le pase el valor a sumar y el id (objeto donde se mostrara), pero llevo intentandolo un buen rato y no hay forma.

A ver si alguien es tan amable de ayudarme porfavor.

Código:

<script language="JavaScript" type="text/javascript" src="insert_mov.js"></script>
<script>

 var valor = 1.5; // valor que se suma cada segundo
 part=valor.toString().split('.');
 var seg = parseInt(part[0]);
 var decimal = valor - seg;
 var recursos = 10000;
 var segaux = 0;
 var count = 0;

function time()
{
        if(count < 1)
        {
                segaux = 0;
                count = count + decimal;
        }
        else {
                        segaux = 1;
                        count = count + decimal - 1;
                  }
    document.getElementById('crystal').innerHTML = recursos;
    recursos = recursos + segaux + seg;
    t = setTimeout("time()", 1000);
}
</script>


<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body onload="time();">
<span id="crystal"></span>
<br />
<span id="metal"></span>
</body>
</html>


quimfv 03/05/2008 13:47

Re: Sumar valor cada segundo a un objeto
 
No se si es una chapuza pero me llamo la atencion tu petición y he sacado algo que se le parece:


Código HTML:

<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script>
var matriuobj=new Array();

function comptador(valor,lloc){
 this.valor = valor; // valor que se suma cada segundo
 this.lloc=lloc;
}

function inicicomptador(valor,lloc){
matriuobj[matriuobj.length]=new comptador(valor,lloc);
setInterval ("time()",1000);
}

function time()
{
        for (i=0;i<matriuobj.length;i++){
        val=parseFloat(document.getElementById(matriuobj[i].lloc.toString()).innerHTML)+matriuobj[i].valor/4;
    document.getElementById(matriuobj[i].lloc.toString()).innerHTML=val;
        }
}
</script>



</head>
<body onload="inicicomptador(1.0,'crystal');inicicomptador(15.0,'metal');">
<span id="crystal">1000</span>
<br />
<span id="metal">1000</span>
</body>
</html>

Dime que te parece!!!

(cada vez estoy mas seguro de que es una chapuza....)


Quim


La zona horaria es GMT -6. Ahora son las 04:25.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.