| |||||||
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: Apr 2004
Beiträge: 4
|
Hallo, hoffentlich kann mir einer von Euch helfen: Ich lasse mit setIntevall eine Funktion starten die Objekt a über den Bildschirm bewegt. Dann möchte ich, dass direkt nach clearInterval die nächste Funktion mit setInterval aufgerufen wird. Ansich kein Problem - einfach hinter das clearInterval in die Funktion schreiben. Da ich aber für jede Bewegung die selbe Funktion benutzen möchte, an die dann halt nur der Name des zu bewegenden Objekts, die Richtung und die Länge des Weges übergeben werden, fällt die Möglichkeit weg ![]() Gibt es da irgendeine Möglichkeit, dem Script, das zum ersten mal setInterval aufruft, zu sagen, wann die Intervallschleife beendet ist, damit es erst dann das nächste setIntervall aufruft? Denn wenn man direkt hinter das setInterval ein weiteres schreibt, wird das ja schon während dem Ablauf des ersten gestartet... Danke im vorraus Cykus |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Apr 2004
Beiträge: 4
|
Das würde in dem Fall funktionieren, aber wenn ich später im script nur eine Bewegung durchführen muss, kann ich die Funktion nicht mehr gebrauchen, weil sie ja nach dem clearInterval direkt das nächste setInterval aufruft. Am liebsten wäre es mir, wenn es ne Möglichkeit geben würde, einen festen programmablauf zu haben. in etwa so: start des filmes - Bewegung 1 - Bewegung 2 - Bewegung 3 - stop button 1 gedrückt: Bewegung 1 - Bewegung 3 button 2 gecrückt: Bewegung 2 Also ne Möglichkeit, dem Script genau zusagen, ob nach dem clearInterval noch mal eins aufgerufen wird oder das nicht der Fall ist. |
| | |
| | #7 (permalink) |
| Neuer User Registriert seit: Apr 2004
Beiträge: 4
| Code: function move (parameter, count)
{
move_length = parameter[0];
objekt = parameter[1];
menu_movie[objekt]._y = menu_movie[objekt]._y + ((move_length - menu_movie[objekt]._y)/40) +1;
if(menu_movie[objekt]._y > move_length){
clearInterval(move_object);
new_count = count -1 ;
if (new_count > 0){
j=0;
while(j <= count*2){
parameter[j] = parameter[j+2];
j++;
}
move_object = setInterval(move, "2", parameter, new_count);
}
}
}
move_para = new Array();
move_para[0] = 0;
move_para[1] = "rahmen";
move_para[2] = 100;
move_para[3] = "rahmen";
move_para[4] = 500;
move_para[5] = "rahmen";
move_object = setInterval(move, "2", move_para, "3"); ich übergebe also ein array "parameter" mit den parametern für die bewegung (name des zu verschiebenden objekts und zielwert für _y) und eine variable "count" mit anzahl der auszuführenden bewegungen. wenn ein interval fertig ist sieht er anhand von "count", ob noch eine bewegung gemacht werden muss und zieht in diesem fall 1 von count ab, "rückt" die parameter im array nach vorne, sprich überschreibt die parameter der ersten bewegung mit denen der zweiten usw. und startet sich dann wieder neu. |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |