Jump to content
vaurdan

Adicionar um valor a cada segundo

Recommended Posts

vaurdan

Boas!

tenho andado a brincar com o javascript, mas agora encontrei-me com um problema que não sei resolver.

Tipo, tenho o valor x, e quero que a cada segundo aumente 1 valor, e que o valor seja automáticamente actualizado na página (Tipo ajax)

Tipo na pagina vemos la escrito:

Valor: 1

e no segundo a seguir ja aparece

Valor: 2

Grato pela ajuda :P


http://www.neopt.org <- O meu blog xD

Share this post


Link to post
Share on other sites
Nazgulled
var cenas = 0;

window.setTimeout('codigoAExecutar()', 1000);

function codigoAExecutar() {
cenas++;
}

Share this post


Link to post
Share on other sites
Dumpster

@Nazgulled: Isso não ia executar o código só uma vez?

Um exemplo meu..

var x=0;
function adicionarValor(){
x++;
document.getElementById("valorAqui").innerHTML=x;
setTimeout("adicionarValor()",1000);
}

E em HTML:

<body onload="adicionarValor();">

<!-- E.. -->

<span id="valorAqui">0</span>

Tens aí um exemplo :P

Share this post


Link to post
Share on other sites
vitortomaz

não dumpster o nazgulled está certo.

está certo porquê? não executa só 1 vez ?

@W3C

<html>
<head>
<script type="text/javascript">
var c=0;
var t;
function timedCount()
{
document.getElementById('txt').value=c;
c=c+1;
t=setTimeout("timedCount()",1000);
}
</script>
</head>

<body>
<form>
<input type="button" value="Start count!" onClick="timedCount()">
<input type="text" id="txt">
</form>
<p>Click on the button above. The input field will count for ever, starting at 0.</p>
</body>

</html>


Share this post


Link to post
Share on other sites
Nazgulled

Enganei-me, deixe-me levar pela sugestão do vitortomaz, o que eu queria fazer era isto:

var cenas = 0;

setInterval('codigoAExecutar()', 1000);

function codigoAExecutar() {
cenas++;
}

Penso que isto já funciona.

Share this post


Link to post
Share on other sites
Battousai

Pois... é isso lol

Li à pressa, pensava que tinhas posto window.setInterval

Share this post


Link to post
Share on other sites
vaurdan

Já agora,

como faço para a cada X segundos adicionar uma row a uma tabela?

Faço tipo:

var x=0;
function adicionarValor(){
x++;
document.write("<td>blabla</td>"); //Adicionando isto por exemplo?
document.getElementById("valorAqui").innerHTML=x;
setTimeout("adicionarValor()",1000);
}

Será que me poderiam ajudar?


http://www.neopt.org <- O meu blog xD

Share this post


Link to post
Share on other sites
migueldesousa

boas, primeiro penso que devias criar 3 metodos um para incrementares e outro para chamar a funçao que incrementa a cada segundo usando o setInterval ( "kkcoisa()", 1000 ); e um ultimo para parares o setInterval visto que ele nao tem capacidade de parar sozinho.

setTimeOut(...) executa o codigo apenas uma vez apos o tempo escolhido

setInterval(...) executa o codigo a cada intervalo de tempo escolhido

a meu ver deverias ter algo como

NOTA: Peço pff que algum me edite o post para por isto com o genshi porque eu n consigo usar isto :P n funciona com web proxys

//js

var coisas=0;

var varIntervalId = 0; //para depois podermos parar o setInterval

function add()

{

  coisas++;

}

function beginAddInterval(_interval)

{

varIntervalId=setInterval("add",_interval);

}

function clearAddInterval()

{

  if(varIntervalId == 0 )

  {

    clearInterval ( varIntervalId );

    varIntervalId  = 0 ;

  }

}

//js

quanto a tabela o melhor que tens a fazer (na minha opiniao) é criares um elemento e depois fazeres apend child algo do genero

//js

var tbl = document.getElementById("aMinhaTabela");

var tr = document.createElement("tr");

tr.class="rozinha";

var td1 = document.createElement("td");

td1.innerText = "ola";

var td2 = document.createElement("td");

td2.innerText = "adeus";

tr.appendChild(td1);

tr.appendChild(td2);

tbl.appendChild(tr);

//js


áááá caralhassssssss

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.