Просмотр полной версии : Функция на MovieClip в цикле
Объясните, пожалуйста, что не так? В результате выводятся одинаковые ID. Но мне то надо разные. Как поступить?
for ( var i=0; i<Connection.length; i++) {
attachMovie("sts_connection", "connection_"+i, 1000+i );
this["connection_"+i].onPress = function () {
trace("This ID is " + i);
}
}
А чему будет равно i, когда цикл закончится и Вы сможете нажать на мувик?
Правильно, последнему i. Вот его айди Вы и получите.
Решение - сохранять "родной" i в свойствах клипа сразу после его создания в цикле:
for ( var i=0; i<Connection.length; i++) {
var con_mc:MovieClip = attachMovie("sts_connection", "connection_"+i, 1000+i );
con_mc.id = i;
con_mc.onPress = function () {
trace("This ID is " + this.id);
}
}
lak-n-roll
18.07.2008, 20:58
У меня вопрос по этой же теме! А как ссылаться на родной i, если тот не родной, а находится в родительской цикле? this.id не коннектится. То есть, если я в цикле сохранил родной i в свойствах клипа, то как обратиться к нему в дочернем цикле?
chingachgoog
18.07.2008, 21:04
lak-n-roll, вы код напишите, что у вас к чему обращается :)
lak-n-roll
18.07.2008, 21:12
) я сам ответ нашел. передал значегия i новому циклу через _root
Бедный _root убитый в AS3
_parent там тоже убили? ;)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.