[ protech_v2 @ 16.06.2007. 22:30 ] @
Znaci SATE sam izgubio, skraceno: Code: games_mc.item0.btn.onRelease = function() {getURL(urls[0], _blank);}; games_mc.item1.btn.onRelease = function() {getURL(urls[1], _blank);}; radi, dok nakon Code: for (var i=0; i<items.length; i++) { games_mc["item" + i].btn.onRelease = function() {getURL(urls[i], _blank);}; } svaki btn otvara potpuno isti URL. Zackoljica je u izgleda (meni jedino objasnjenje) tome sto ako je definicija funkcije ista u samom kodu (bez obzira na "i" parametar koji je razliciti u svakoj iteraciji), sve instance ce dobiti tacno istu funkciju. Odnosno, u svakoj iteraciji petlje ce sve instance dobiti funkciju sa trenutnom vrednoscu parametra i, tako da na kraju sve imaju funkciju koja otvara poslednji URL niza urls... Samo ako se bas definicija razlikuje (u prvom primeru su razliciti indexi niza), onda i instance dobijaju razlicite funkcije iako bi to trebalo da je potpuno odvojeno po svakoj logici? Strasno! (Btw, probao sam i da se svaka instanca "btn" objekta zove razlicito, pomislivsi da je mozda taj "btn" isti za sve "item"-e, ali i dalje potpuno isto, definitivno se problem manifestuje kako sam opisao) |