clearInterval funktioniert nicht [Flash 9]
| 25.06.2009, 16:57 | | Beiträge: 153 Wohnort: Braunschweig Registriert: May 2003
| clearInterval funktioniert nicht Ich habe ein Problem: per Timer steuere ich die Anzeigedauer eines Bildes und wechsel dann nach Ablauf der Zeit zu einem anderen Frame/Bild.
Unabhängig davon soll man auch per Button manuell weiter schalten können.
Dazu unterbreche ich den Timer per "clearInterval" bzw. versuche es, was mir aber nicht gelingt.
Den Button habe ich so definiert:
PHP:1 2 3 4 5 6 7 8
|
<? button_vor.onRelease = function() {
reset();
clearInterval( interval1 );
nextFrame();
}; ?>
|
Nun der Timer:
PHP:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
<? import mx.transitions.Tween;
import mx.transitions.easing.*;
var tween_handler1:Tween;
function einblender01 ():Void {
tween_handler1 = new Tween(image1, "_alpha", None.easeIn, 0, 100, 1, true);
tween_handler1.onMotionFinished = function() {
trace("Einblender Finish1");
var interval1:Number = setInterval( timer1, 250 );
function timer1():Void
{
verlaufsanzeige.nextFrame();
if ( verlaufsanzeige._currentframe == 20 )
{
clearInterval( interval1 );
verlaufsanzeige.gotoAndStop(1);
reset();
play();
}
}
};
}; ?>
|
Und am Schluss die Reset Funktion:
PHP:1 2 3 4 5 6 7 8 9 10 11
|
<? function reset() {
trace("Reset1");
tween_handler1.stop();
verlaufsanzeige.gotoAndStop(1);
clearInterval( interval1 );
}
einblender01 (); ?>
|
Selbständig läuft die Slide-Show ab. Sobald ich jedoch per Button weiterschalte, kommt der Timer aus den Fugen.
Das clearInterval kommt also nicht an, wenn ich den Button betätige, nur warum?
Danke,
Cornel. | |
| 25.06.2009, 17:03 | Re1 | Beiträge: 1769 Wohnort: Laimbach 6 1/2 Registriert: Nov 2002
| ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | import mx.transitions.Tween;
import mx.transitions.easing.*;
var interval1:Number;//hier
var tween_handler1:Tween;
function einblender01 ():Void {
tween_handler1 = new Tween(image1, "_alpha", None.easeIn, 0, 100, 1, true);
tween_handler1.onMotionFinished = function() {
trace("Einblender Finish1");
interval1 = setInterval( timer1, 250 );//hier
function timer1():Void
{
verlaufsanzeige.nextFrame();
if ( verlaufsanzeige._currentframe == 20 )
{
clearInterval( interval1 );
verlaufsanzeige.gotoAndStop(1);
reset();
play();
}
}
};
};
|
Das interval ist so wie Du es geschrieben hast, nur in der Funktion sichtbar
wen Du des außerhalb Deklarierst, ist es auch von überall erreichbar!Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen" | |
| | Themen Ähnliche Beiträge zum Thema | 18.08.2009 - sir-reilley 05.06.2010 - Big-Daddy 19.08.2009 - sir-reilley 27.08.2009 - sir-reilley |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News 
Regeln & Bedingungen
|