| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Marburg
Beiträge: 19
| Probleme beim aufrufen einer Funktion mit Hilfe setInterval
Hallo ihr lieben As'ler, folgendes Problem. Ich hab vor wie hier beschrieben, eine Bilderschow zu machen. Nun hab ich das Problem, dass meine Funktion, mit der ein Bild nach dem anderen durchsichtig werden soll( abdunkeln- Funktion - falscher Name :P), nur einmal aufgerufen wird. onLoad Function: Code: ...
for (var i = 13; i>=0; i--) {
for (var z = 1; z<=4; z++) {
_root["Bild"+z].createEmptyMovieClip("Bild_"+i, i+5);
_root["Bild"+z]["Bild_"+i].loadMovie("BilderShow/ShowBild"+i+"/Bild"+z+".jpg", 1);
_root["Bild"+z]["Bild_"+i]._alpha = 100;
}
}IntervalID = setInterval(Durchlauf(),20,[CurrentPic,BN,BNB,Richtung]);
} Der "Bildwechsler": Code: function Durchlauf(CurrentPic, BN, BNB) {
trace( "0 : " + BN);
if (BN>=1) {
switch (CurrentPic) {
case 1 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln(), 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB += 1;
}
trace(CurrentPic);
break;
case 2 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln(), 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB += 1;
trace( "1 : " + BNB);
}
break;
case 3 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln(), 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB += 1;
}
break;
case 4 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln(), 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
}
break;
case 5 :
clearInterval(IntervalID);
IntervalID = setInterval(warten(), 2000, Richtung);
if (Richtung == false) {
CurrentPic += 1;
BN -= 1;
Richtung = true;
clearInterval(IntervalID);
}
break;
case 6 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln(), 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB -= 1;
}
break;
case 7 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln(), 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB -= 1;
trace(BNB);
}
break;
case 8 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln(), 50, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB -= 1;
}
break;
case 9 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln(), 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
}
break;
case 10 :
clearInterval(IntervalID);
IntervalID = setInterval(warten(), 2000, Richtung);
if (Richtung == false) {
CurrentPic = 1;
BN -= 1;
Richtung = true;
clearInterval(IntervalID);
}
break;
}
}
abdunkeln(BN, BNB);
} Code: function abdunkeln(BN, BNB) {
_root["Bild"+BNB]["Bild_"+BN]._alpha -=1;
trace(_root["Bild"+BNB]["Bild_"+BN]._alpha);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
IntervalID = setInterval(Durchlauf, 50, [BN, BNB]);
clearInterval(IntervalID2);
}
} Code: function warten(Richtung) {
Richtung = false;
clearInterval(IntervalID);
IntervalId = setInterval(Durchlauf, 50, [BN,BNB]);
} Sicherlich gibt es bessere Stile zum verwirklichen aber ich bin leider ein wenig delphi geprägt. Bitte um Hilfe, bin schon verzweifelt ![]() mit Freundlichen Grüßen ;-)
__________________ ...! Incyder Geändert von ;-) (07-12-2005 um 19:23 Uhr) |
| | |
| | #2 (permalink) |
| helpQLODhelp Registriert seit: Feb 2002 Ort: Köln
Beiträge: 8.505
|
Der Aufruf von setInterval ist nicht ganz richtig. PHP-Code: mfg. r
__________________ Ralf Bokelberg™ - Flex & Flash Consulting |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Marburg
Beiträge: 19
|
dieses Problem ist behoben, Vielen Dank Aber nun hab ich Probleme, dass er nicht mehr die Variablen BN und BNB mit übergibt. BN ist die Bildnummer (1-4) und BNB ist die Bildnummer innerhalb des BN's mit dem jeweiligen viertel des Bildes, die übereinander liegen. Von durchlaufen zu abdunkeln werden diese zwei (Bn,BNB) Variablen nicht übergeben... bitte um hilfe danke =)
__________________ ...! Incyder |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Marburg
Beiträge: 19
|
take this Code: this.onLoad = function () {
var Richtung = true;
var IntervalID;
var IntervalID2;
var CurrentPic = 1;
var BN = 13;
var BNB = 1;
Durchlauf(CurrentPic, BN, BNB);
}
function Durchlauf(CurrentPic, BN, BNB) {
trace( "0 : " + BN);
if (BN>=1) {
switch (CurrentPic) {
case 1 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln, 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB += 1;
}
trace(CurrentPic);
break;
case 2 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln, 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB += 1;
trace( "1 : " + BNB);
}
break;
case 3 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln, 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB += 1;
}
break;
case 4 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln, 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
}
break;
case 5 :
clearInterval(IntervalID);
IntervalID = setInterval(warten, 2000, Richtung);
if (Richtung == false) {
CurrentPic += 1;
BN -= 1;
Richtung = true;
clearInterval(IntervalID);
}
break;
case 6 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln, 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB -= 1;
}
break;
case 7 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln, 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB -= 1;
trace(BNB);
}
break;
case 8 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln, 50, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
BNB -= 1;
}
break;
case 9 :
clearInterval(IntervalID);
IntervalID2 = setInterval(abdunkeln, 20, [BN, BNB]);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
CurrentPic += 1;
}
break;
case 10 :
clearInterval(IntervalID);
IntervalID = setInterval(warten, 2000, Richtung);
if (Richtung == false) {
CurrentPic = 1;
BN -= 1;
Richtung = true;
clearInterval(IntervalID);
}
break;
}
}
}
function abdunkeln(BN, BNB) {
trace("A : " + BN);
trace("B : " + BNB);
_root["Bild"+BNB]["Bild_"+BN]._alpha -=1;
trace(_root["Bild"+BNB]["Bild_"+BN]._alpha);
if (_root["Bild"+BNB]["Bild_"+BN]._alpha == 0) {
IntervalID = setInterval(Durchlauf, 50, [BN, BNB]);
clearInterval(IntervalID2);
}
}
function warten(Richtung) {
Richtung = false;
clearInterval(IntervalID);
IntervalId = setInterval(Durchlauf, 50, [BN,BNB]);
} echt super wenn ihr mir helfen könntet - ich dreh noch durch :P
__________________ ...! Incyder |
| | |
| | #6 (permalink) |
| brand new user Registriert seit: May 2002 Ort: Laimbach 6 1/2
Beiträge: 16.884
|
Probier mal des, vielleicht klingelts dann PHP-Code:
__________________ Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake! "Wer tanzen will, muß erst gehen lernen" |
| | |
| | #7 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Marburg
Beiträge: 19
|
uff sorry raff ich nich wo soll denn der fehler liegen ![]() hab versucht ein wenig das so wie ichs verstanden hab zu ändern aber das funtzt nicht.... wäre nett wenn du mir weiter helfen koenntest.Danke
__________________ ...! Incyder Geändert von ;-) (07-12-2005 um 22:12 Uhr) |
| | |
| | #8 (permalink) |
| brand new user Registriert seit: May 2002 Ort: Laimbach 6 1/2
Beiträge: 16.884
|
Wenn Du die trace vergleichst, siehst Du das im ersten aufruf (der mit den []) für bn alles was in den Klammern übergeben wird, und bd =="undefined" trace== bn => test1,test2 bd => undefined
__________________ Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake! "Wer tanzen will, muß erst gehen lernen" |
| | |
| | #9 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Marburg
Beiträge: 19
|
Vielen Dank jetzt zeigt er wenigstens ein Bild von 4ren an zwar auch in falscher Reihenfolge aber da muss ich noch weiter probieren.! Tausend Dank. ich hoffe ich kann auf dich zurück kommen wenn ich mal wieder nicht weiter weiß Danke
__________________ ...! Incyder |
| | |
| | #10 (permalink) |
| brand new user Registriert seit: May 2002 Ort: Laimbach 6 1/2
Beiträge: 16.884
|
ach ja und den functionsaufruf ohne runde klammern
__________________ Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake! "Wer tanzen will, muß erst gehen lernen" |
| | |
| | #11 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Marburg
Beiträge: 19
|
Moin MOin ich komm einfach nicht weiter.... Die Variablen werden nicht richtig übergeben und das ANsprechen des Mc's gelingt nur beim ersten mal, aber nicht beim zweiten.. ich bin echt verzweifelt... guckt es euch an hier mfg Incyder
__________________ ...! Incyder |
| | |
| | #12 (permalink) |
| brand new user Registriert seit: May 2002 Ort: Laimbach 6 1/2
Beiträge: 16.884
|
Ich kann die datei nicht öffnen! ist des Flash 8? Speicher des bitte in Flash 7 wenns geht.
__________________ Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake! "Wer tanzen will, muß erst gehen lernen" |
| | |
| | #14 (permalink) |
| brand new user Registriert seit: May 2002 Ort: Laimbach 6 1/2
Beiträge: 16.884
|
Wenn man die Function "Durchlauf" mit der richtigen anzahl von Parametern aufruft kommen die Variablen "BN" &"BNB" schon an! Vorsicht ich hab die Bilder und Twenns aus dem Film gekickt!
__________________ Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake! "Wer tanzen will, muß erst gehen lernen" |
| | |
| | #15 (permalink) |
| Neuer User Registriert seit: Jan 2002 Ort: Marburg
Beiträge: 19
|
mhh die var currentpic übernimmt er abernicht wieso ? ich blick das nich Bn wird auch nicht 2 ...ich versteh echt nicht warum es nicht geht... ich hoffe du kannst mir noch ein wenig weiterhelfen Millionen Dank im Vorraus Ciao Incyder
__________________ ...! Incyder Geändert von ;-) (09-12-2005 um 21:32 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |