Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-01-2006, 15:08   #1 (permalink)
Neuer User
 
Registriert seit: May 2005
Beiträge: 82
mc.onPress = function(){xx} in FOR-Schleife !??!

Nabend,

folgendes Codeschnipsel führt zu einem - für mich - seltsamen Ergebnis.
Code:
	for(k=0;k<11;k++){
		trace(k);
		_root.mainnav[ "subnav" + linknr][ "MClayer" + linknr + k ].onPress		= function () { trace(k); resetNav(linknr); _root.active_yacht = k; _root.mainnav[ "subnav" + linknr][ "MClayer" + linknr + k ][ "layer" + linknr + k ].setTextFormat(txtFormatA); }
		_root.mainnav[ "subnav" + linknr][ "MClayer" + linknr + k ].onRollOver  = function () { if(_root.active_yacht != k) _root.mainnav[ "subnav" + linknr][ "MClayer" + linknr + k ][ "layer" + linknr + k ].setTextFormat(txtFormatO); }
		_root.mainnav[ "subnav" + linknr][ "MClayer" + linknr + k ].onRollOut   = function () { if(_root.active_yacht != k) _root.mainnav[ "subnav" + linknr][ "MClayer" + linknr + k ][ "layer" + linknr + k ].setTextFormat(txtFormatH); }
	}
Das k innerhalb der function(){k} ist IMMER 11.
Weiß jemand Rat?
Danke!
Zinotidi ist offline   Mit Zitat antworten
Alt 12-01-2006, 15:20   #2 (permalink)
BS
 
Benutzerbild von BorstiStumpf
 
Registriert seit: Oct 2004
Ort: OÖ
Beiträge: 18
Dein onPress, onRollOver und onRollOut -Prozedur in der for schleife wird ja erst dann ausgeführt wenn es zu spät ist!
BorstiStumpf ist offline   Mit Zitat antworten
Alt 12-01-2006, 15:25   #3 (permalink)
angry > always
 
Benutzerbild von ingohill
 
Registriert seit: Jul 2001
Ort: NRW
Beiträge: 1.635
PHP-Code:
for(k=0;k<11;k++)
{
    
tmp                _root.mainnav"subnav" linknr][ "MClayer" linknr ];
    
tmp.k              k;
    
tmp.onPress      = function () { trace(this.k); resetNav(linknr); _root.active_yacht this.k_root.mainnav"subnav" linknr][ "MClayer" linknr this.][ "layer" linknr this.].setTextFormat(txtFormatA); }
    
tmp.onRollOver  = function () { if(_root.active_yacht != this.k_root.mainnav"subnav" linknr][ "MClayer" linknr this.][ "layer" linknr this.].setTextFormat(txtFormatO); }
    
tmp.onRollOut    = function () { if(_root.active_yacht != this.k_root.mainnav"subnav" linknr][ "MClayer" linknr this.][ "layer" linknr this.].setTextFormat(txtFormatH); }

-ingo
__________________

on air: caliban | neaera | heaven shall burn | hatebreed | the agony scene
ingohill ist offline   Mit Zitat antworten
Alt 12-01-2006, 15:59   #4 (permalink)
Neuer User
 
Registriert seit: May 2005
Beiträge: 82
HEy Danke,

das funktioniert. Ich verstehe nur nicht ganz warum der andere weg nicht funktioniert. Legt flash zuerst die onXX Prozeduren an und nach dem schleifendurchlauf die zugehörigen Funbktionen?
Wäre schön wenn mir das jemand erklärt!

Danke! Gruß!
Zinotidi 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 22:16 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele