Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Javascript: setInterval  (gelezen 2346 keer)

Offline oo7

  • Lid
  • Steunpunt: Nee
Javascript: setInterval
« Gepost op: 2009/04/14, 16:15:42 »
Ik heb de volgende webpagina;

<html>
<head>

<script>
var i=1;
function update(){
i++;
document.getElementById('tekst').innerHTML = i;
}
</script>
</head>
<body onload="setInterval(update(),1000)">
<div id="tekst"></div>

</body>
</html>

helaas werkt setInterval maar een keer.
wat doe ik fout??
http://www.000webhost.com/74168.html Beste gratis webhosting die er is!!!
Wie zich via deze link aanmeld helpt een arme student (ik dus)

Offline ShadowDragon

  • Lid
  • Steunpunt: Nee
Re: Javascript: setInterval
« Reactie #1 Gepost op: 2009/04/14, 16:58:49 »
Je bent de recursie vergeten. Je moet de update-methode zichzelf laten oproepen.
Je moet "setInterval" eigenlijk als een time-out beschouwen, wacht xxx milliseconden en doe dan method y.

Niet getest maar zou moeten werken.
<html>
<head>

<script>
var i=1;
function update(){
i++;
document.getElementById('tekst').innerHTML = i;
setInterval(update(),1000);
}
</script>
</head>
<body onload="update()">
<div id="tekst"></div>

</body>
</html>

Meer info hierover kan je ook hier vinden: W3Schools - Javascript Timing Events. Voornamelijk het derde voorbeeld is handig voor jouw.

Edit:
Oeps nu zie ik het ook, ik heb setInterval en setTimeout door elkaar gehaald, my mistake... thx MataS
« Laatst bewerkt op: 2009/04/15, 15:25:05 door ShadowDragon »
Xubuntu 11.04 - Xfce 4.8 - SSD Vertex 2 (Extended) 60 GB

Offline MataS

  • Lid
  • Steunpunt: Nee
Re: Javascript: setInterval
« Reactie #2 Gepost op: 2009/04/15, 15:03:43 »
Je moet het volgende aanpassen:
<body onload="setInterval(update(),1000)">
vervangen door:
<body onload="setInterval('update()',1000)">
setInterval(code, timeout) werkt als volgt:
elke keer nadat 'timeout' milliseconde zijn verlopen wordt code uitgevoerd als 'eval(code)'.
code moet dus tussen quotes (' of ") staan.

Offline oo7

  • Lid
  • Steunpunt: Nee
Re: Javascript: setInterval
« Reactie #3 Gepost op: 2009/04/24, 19:06:09 »
Oei oei!! wat een blunder!

maar is het ook mogelijk dit in een greasemonkey script te gebruiken?
tot nu toe lukte dat maar een keer en verder niet.

Het schijnt een bug te zijn, maar toch heb ik werkende scripts gezien..
http://www.000webhost.com/74168.html Beste gratis webhosting die er is!!!
Wie zich via deze link aanmeld helpt een arme student (ik dus)