Funkar inte följande?
mc_holder["app"+i].appDesc = appDesc;
mc_holder["app"+i].onRelease = function ()
{
trace (this.appDesc); //tracar bara appDesc's värde från senaste loop-omgången
}
/Mirandir
1 svar · 240 visningar · startad av KalleWarrior
Ja, kort sagt så har jag en funktion som hämtar ut nodeValues från ett xml-dokument, i denna funktion finns en for-loop (i < childNodes.lenght) som skriver in dessa values i dynamsikt skapade movieclips med textfält.
Nu är det så att detta är en sorts meny, och klickar man på ett alternativ ska information från xml-dokumentet visas i ett movieclip/textfält intill menyn. Så jag har en onRelease-funktion till varje omgång i for-loopen. Men så stötte jag på detta problem med att när jag tracar aktuell variabel (hämtad från xml) så skriver den bara ut valuen från sista loop-omgången vilken av mina movieclips jag än klickar på. Och efter att ha sökt lite har jag upptäckt att detta är ett vanligt problem och jag förstår varför det blir som det blir. Jag hittade också lite lösningar, men jag lyckas inte implementera dessa lösningar i min kod :/ Så det var det jag tänkte att nån kanske kunde hjälpa mig med?
Här är sidor med olika lösningar:
http://www.senocular.com/flash/tutorials/faq/#loopfunctions
http://www.flashdevils.com/showthread.php?s=&postid=177141
http://www.ozzu.com/ftopic72576.html
Min funktion som den ser ut nu:
mc_holder["app"+i].onRelease = function (){
trace (appDesc); [blue]//tracar bara appDesc's värde från senaste loop-omgången[/blue]
}
Om nån tror sig kunna lösa det men behöver hela koden så säg till.
Funkar inte följande?
mc_holder["app"+i].appDesc = appDesc;
mc_holder["app"+i].onRelease = function ()
{
trace (this.appDesc); //tracar bara appDesc's värde från senaste loop-omgången
}
/Mirandir