Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-07-2004, 18:18   #1 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
schleife kürzen

hi,

kann ich diese zeilen noch kürzer schreiben??

Code:
_root.info.onEnterFrame = function() {
	if (this._currentframe == 7) {
	} else if (this._currentframe == 15) {
		_root.feld._visible = true;
	} else if (this._currentframe == 25) {
		_root.feld._visible = true;
	} else if (this._currentframe == 35) {
		_root.feld._visible = true;
	}
};
gruss sven
xlive ist offline   Mit Zitat antworten
Alt 14-07-2004, 18:28   #2 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
ja: switch abfrage!

ActionScript:
  1. _root.info.onEnterFrame = function() {
  2.     switch (this._currentframe) {
  3.         case 7: //bisl sinnlos oder?
  4.             break;
  5.         case 15:
  6.             _root.feld._visible = true;
  7.             break;
  8.         case 25:
  9.             _root.feld._visible = true;
  10.             break;
  11.         //usw...
  12. };
pape ist offline   Mit Zitat antworten
Alt 14-07-2004, 18:30   #3 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
haaa...

danke.

gruss sven
xlive ist offline   Mit Zitat antworten
Alt 15-07-2004, 00:24   #4 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
ActionScript:
  1. _root.info.frameArray =[15, 25, 35];
  2. _root.info.onEnterFrame = function() {
  3.      for(var i = 0; i<this.frameArray.length;i++){
  4.         if(this._currentframe == this.frameArray[i]) _root.feld._visible = true;
  5.      }
  6. }




greetz

kelor

Geändert von kelor (15-07-2004 um 00:26 Uhr)
kelor ist offline   Mit Zitat antworten
Alt 15-07-2004, 00:32   #5 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
muss das dann nicht fameArray.length-1 heißen?
pape ist offline   Mit Zitat antworten
Alt 15-07-2004, 01:29   #6 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
nope...weiso denn?

kleiner (länge - 1) gäbe ja bei drei elementen maximum 1 anstelle von 2.

array = [ 100, 200, 300, 400, 500];

länge = 5

indzies 0 - 4 eine for schleife die bei 0 beginnt und bei kleiner länge (also 4) aufhört, umfasst alle arrayelemente, also array[0] - array[4].


würde man dein script anwenden, käme das dabei heraus...
länge ist gleich 5 || wert kleiner länge ist gleich 4 || -1 ist gleich 3

array[0], array[1], array[2], array[3]
100, 200, 300, 400


somit würd mir das letzte element ( array[4]) = 500) fehlen


greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 15-07-2004, 11:47   #7 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
ups....hab das "<" als "<=" gelsen.. ich benutze nämlich meist zweitens...
pape ist offline   Mit Zitat antworten
Alt 15-07-2004, 11:52   #8 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
da sit aber meine version sinnvoller und einfacher...denn:
du läst die schleife bis länge laufen, um dann doch wieder eins abzuziehen...also doppelt genäht...erst hochrennen und dann wieder runter...
meine syntax hört einfach unter länge auf...
[ist eigentlich auch die korrekte art, an sowas ranzugehen]

im endeffekt: gehuppst, wie geduppst[würde man bei uns sagen... ]


greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 15-07-2004, 11:57   #9 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
ja.. bin überzeugt!
pape ist offline   Mit Zitat antworten
Alt 15-07-2004, 12:01   #10 (permalink)
Neuer User
 
Benutzerbild von mimaba
 
Registriert seit: May 2003
Beiträge: 81
PHP-Code:
var = [7152535];
var 
_root.feld._visible;
_root.info.onEnterFrame = function() {
    for (
i in f) {
        
p._visible f[i] == this._currentframe true false;
    }
}; 
mimaba ist offline   Mit Zitat antworten
Alt 15-07-2004, 12:20   #11 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
mimaba...ich bevorzuge allerdings ein array von vorne nach hinten zu durchlaufen, wenn es um sowas geht...
du hingegen rennst von hinten los...

desweiteren muss es

ActionScript:
  1. var p = _root.feld;
heißen, da deine syntax einen boolean liefert...

ist also auch nicht kürzer...
aber davon ab: ist das, wie so manche hier wissen, eh meine bevorzugte syntax...



greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 15-07-2004, 12:45   #12 (permalink)
Neuer User
 
Benutzerbild von mimaba
 
Registriert seit: May 2003
Beiträge: 81
ah ja stimmt hab ich übersehen
in diesem fall ist es ja egal in welcher richtung das array durchlaufen wird, hab mal gelesen das for..in die schnellste aller schleifen ist.
mimaba ist offline   Mit Zitat antworten
Alt 15-07-2004, 13:04   #13 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
die schnellste aller schleifen ist definitiv die
while

da kommmt nix hin...

greetz

kelor
kelor ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 04:12 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele