Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-10-2003, 17:24   #1 (permalink)
Neuer User
 
Benutzerbild von virtualize
 
Registriert seit: Aug 2003
Ort: Zürich
Beiträge: 120
goto springt nicht zu frame bezeicher

hi. hab folgenden code in meinem fla:
ActionScript:
  1. stop();
  2. menuNamesArray = new Array("Startseite", "Portfolio", "Introspection VI", "Kontakt", "Impressum");
  3. for (i=0; i<menuNamesArray.length; i++) {
  4.     this["menu_btn_"+i].stop();
  5.     this["menu_btn_"+i].text_mc.menuTextField.text = menuNamesArray[i];
  6.     this["menu_btn_"+i].onRollOver = function() { this.gotoAndPlay("in"); };
  7.     this["menu_btn_"+i].onRollOut  = function() { this.gotoAndPlay("out"); };
  8.     this["menu_btn_"+i].onReleaseOutside  = function() { this.gotoAndPlay("out"); };   
  9.     this["menu_btn_"+i].onRelease = function() { _root.gotoAndStop(["content_"+i]) };
  10.     trace(["content_"+i]);
  11. }

hier wird nix weiter gemacht als 5 mc's ein name gegeben und ein paar clickfunctionen dazu. nun hab ich das problem, dass das der onRelease Funktion der String nicht vernünftig übergeben wird.
alle mc's haben beim _root.gotoAndStop(["content_"+i]) befehl immer nur die variable des letzten schleifen durchlaufs.

ist das ein grundsätzliches problem bei solchen onWasAuchImmer funtionen, dass man die nicht in schleifen kreieren kann. oder wie?

danke schon mal im voraus.
virtualize ist offline   Mit Zitat antworten
Alt 17-10-2003, 17:39   #2 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
zur laufzeit deiner events ist i halt der letzte wert.
speicher das i in den mc als id.
ActionScript:
  1. stop();
  2. menuNamesArray = new Array("Startseite", "Portfolio", "Introspection VI", "Kontakt", "Impressum");
  3. for (i=0; i<menuNamesArray.length; i++) {
  4.         this["menu_btn_"+i].id=i
  5.         this["menu_btn_"+i].stop();
  6.         this["menu_btn_"+i].text_mc.menuTextField.text = menuNamesArray[i];
  7.         this["menu_btn_"+i].onRollOver = function() { this.gotoAndPlay("in"); };
  8.         this["menu_btn_"+i].onRollOut  = function() { this.gotoAndPlay("out"); };
  9.         this["menu_btn_"+i].onReleaseOutside  = function() { this.gotoAndPlay("out"); };
  10.         this["menu_btn_"+i].onRelease = function() { _root.gotoAndStop(["content_"+this.id]) };
  11.         trace(["content_"+this.id]);
  12. }
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 17-10-2003, 17:41   #3 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Hi,
doch grundsätzlich kann man das schon so machen. Funktionieren denn die anderen Handler so, wie sie sollen, also rollOver und so?

Ich hab sowas gemacht:
ActionScript:
  1. var numClips = 5;
  2. //
  3. for (var i = 1; i<=numClips; i++) {
  4.     _root["mc"+i].onRollOver = function() {
  5.         this._xscale = this._yscale *= 1.1;
  6.     };
  7.     _root["mc"+i].onRollOut = _root["mc"+i].onReleaseOutside=function () {
  8.         this._xscale = this._yscale /= 1.1;
  9.     };
  10.     _root["mc"+i].onRelease = function() {
  11.         _root.content = this._name;
  12.         _root.content_mc.play();
  13.         _root.hideMCs();
  14.     };
  15. }
...und das geht. Jedem der MCs wird sein Handler zugewiesen... Kann dir jetzt nicht sofort sagen, woran es bei dir liegt. Mal vergleichen... Warum hast du bei _root.gotoAndStop(["content"+i]); eine eckige Klammer?

Gruß,
Tom
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 17-10-2003, 17:44   #4 (permalink)
Neuer User
 
Benutzerbild von virtualize
 
Registriert seit: Aug 2003
Ort: Zürich
Beiträge: 120
dankeschön. :-)
da hätte ich aber auch selber drauf kommen können.
manchmal ist die antwort zu offentsichtlich....

schönes wochenende.
virtualize ist offline   Mit Zitat antworten
Alt 17-10-2003, 17:46   #5 (permalink)
Neuer User
 
Benutzerbild von virtualize
 
Registriert seit: Aug 2003
Ort: Zürich
Beiträge: 120
@sonar
war ein total dämlicher schleifen-denkfehler. hat sich erledigt.
trotzdem dankeschön

@HAY
die vorige nachricht war für dich :-)
virtualize ist offline   Mit Zitat antworten
Alt 17-10-2003, 19:03   #6 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
war mir schon klar
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 18-10-2003, 09:33   #7 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Aber interessiert hätts mich jetzt schon noch... Warum klappt's bei mir? Und warum die eckigen Klammern?

Tom
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 18-10-2003, 09:44   #8 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
@sonar du hast ja kein i im event drinn.
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 18-10-2003, 10:08   #9 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
@hay: OK, den Unterschied hab ich schon gesehen und fast vermutet, dass da der Hund begraben liegt, aber ganz klar wars mir auch nicht, wann das hochgezählte i bei den Buttons "bleibt" und wann nur der letzte Wert behalten wird. Aber deine Lösung mit id find ich sehr elegant, werd ich mir merken, wenns mit dem i mal wieder nicht so klappt. Danke.

Tom
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar 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 17:09 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele