clearInterval Problem

oaki

Erfahrenes Mitglied
Hi!

Ich wollte eine Funktion nach 2 Sekunden einmal aufrufen und habe deshalb folgendes programmiert:

PHP:
stop();

	setit();

function setit() {
	
var intervalId:Number = 1; 
intervalId = setInterval(fadeout,2000);
}

function kickit() {
	clearInterval(intervalId);
	
}

function fadeout() {
kickit();
	trace("fading out");
	gotoAndPlay(2);
}

komischerweise wird der Interval nicht gelöscht und es feuert jede 2. Sekunde die Funktion ab! Weiss jemand wieso das nicht funktioniert?

Vielen Dank!
 
Hi,

da Du die Variable "intervalId" in der Funktion "setit()" deklarierst, ist sie eine lokale Variable dieser Funktion und in "kickit()" nicht mehr bekannt. Deklariere die Variable als Zeitleistenvariable ausserhalb Deiner Funktionen.

Gruß
.
 
funktioniert leider auch nicht. Ich habs nun mit folgendem Code versucht:

PHP:
stop();

var intervalId:Number = 1; 
setit();

function setit() {
intervalId = setInterval(fadeout,2000);
}

function kickit() {
	trace("The IntervalID is: " + intervalId);
	clearInterval(intervalId);
	
}

function fadeout() {
kickit();
	trace("fading out");
	gotoAndPlay(2);
}
 
Hi,

Dein letzter Code funktioniert bei mir tadellos. Vielleicht entsteht ein Fehler durch den Sprung auf Frame 2 (und etwaige Sprünge von dort aus zurück, über die ich nichts wissen kann). Poste doch mal Deine Sourcedatei.

Gruß
.
 
Zurück