ugrás a tartalomhoz

végrehajtási sorrend

robit · 2007. Okt. 26. (P), 20.49
Üdv mindenkinek!
Próbálkozom a flash el
és belefutottam egy problémába:

adott az alábbi kódrészlet

function dataLoaded(){
....
_global.data_obj = obj; // Eltároljuk az objektumot globális változóként
trace("Data loaded from XML");
....
}

var data_xml = new XML();
// betöltjük a data.xml-t, amibõl generált objektumot a dataLoaded függvény feldolgoz
data_xml.loadToObject("images.xml", dataLoaded);
trace ("data xml"+data_xml);

var image = buildList(_global.data_obj);
trace ("image"+image);


trace output:

data xml
image
Data loaded from XML


A gondom/kérdésem :
1.miért van a futási sorrend változás (a Data loaded form XML az első sornak kellene lennie az outputban sztem.)
2. a data_xml és image miért lehet üres

bónusz : van a flash ben var_dump hoz hasonlatos függvény?

Üdv Robit
 
1

Callback

kicsy · 2007. Okt. 26. (P), 22.00
A dataLoaded függvény akkor kerül meghívásra, amikor az xml fájl betöltődött. Az XML.loadToObject hívásakor tehát elkezdődik a töltés kvázi a háttérben, és fut tovább közben a fő szál: ha a fájl nem töltődik be mire a buildList(_global.data_obj) részhez ér a program, akkor még nem lesz elérhető a _global.data_obj -> minden olyat, ami ezeket az adatokat használná, a callback-be rakj.
2

Ismerős

Poetro · 2007. Okt. 27. (Szo), 17.17
Hú de emlékeztet ez arra a kódra amit irtam :)
3

nem véletlen

robit · 2007. Okt. 27. (Szo), 18.37
nem nélkülöz semmi véletlent :-)