[JS] setInterval stoppen*

Pagina: 1
Acties:
  • 159 views sinds 30-01-2008
  • Reageer

  • Serenity
  • Registratie: Oktober 2005
  • Laatst online: 14-01-2023
Ik heb een pagina met een div waar ik elke 10 seconden data heenstuur d.m.v. AJAX. Dus zoiets:

code:
1
<div id="dit-moet-herladen-worden"></div>


Met het volgende scriptje

code:
1
2
3
4
5
<script type="text/javascript">
AJAX spul
(...)
window.setInterval('iets()', 10000);
</script>


Als de pagina laadt wil ik dat hij standaard die div blijft updaten, behalve wanneer ik met AJAX iets specifieks in de div stop. Op dat moment wil ik dat -zonder de gehele pagina te herladen- het setInterval thingy stopt met werken zodat die specifieke data niet verdwijnt.

Nu had ik 't volgende bedacht. Ik zet dat scriptje in een div, en daar stuur ik gewoon 'niks' heen, zodat dat script verdwijnt. Iets als:

code:
1
2
3
4
5
<div id="reload">
  <script type="text/javascript">
    window.setInterval('iets()', 10000);
  </script>
</div>


Nu stop ik iets in "dit-moet-herladen-worden", en stuur ik niks (of iig iets anders dat dat reload script) naar de div "reload". Dit werkt opzich wel, hij update "reload" namelijk netjes, maar hij blijft wel reloaden. Weet iemand waar 't hier fout gaat? Dus hoe kan ik die setInterval stoppen zonder de hele pagina te herladen?

Verwijderd

Als je iets over setInterval kunt vinden in de documentatie, kun je de clearInterval functie niet missen.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Wat heb je zelf gedaan om dit op te lossen :?

Ten eerste hoort dit in Webdesign, Markup & Clientside Scripting, maar simpelweg [google=Cancel setInterval] levert een hoop relevante hits op.

Concreto:

JavaScript:
1
2
3
4
var whatEver = setInterval('iets()', 1000)

...
clearInterval(whatEver);

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Serenity
  • Registratie: Oktober 2005
  • Laatst online: 14-01-2023
Hmm, daar had ik inderdaad wel wat beter naar mogen zoeken :$ Bedankt beide!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

>>WEB voor future reference. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

En verzin voortaan een beschrijvende titel. Volgens mij heeft je probleem met setInterval te maken en niks met AJAX ;)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Serenity
  • Registratie: Oktober 2005
  • Laatst online: 14-01-2023
BtM909 schreef op vrijdag 08 juni 2007 @ 23:53:
En verzin voortaan een beschrijvende titel. Volgens mij heeft je probleem met setInterval te maken en niks met AJAX ;)
Uhuh; mijn idee was het m.b.v. AJAX te laten stoppen, wat niet werkte, vandaar de titel.
Pagina: 1