PDA

Просмотр полной версии : Динамическое создание параметров для функций


Dragon rideR
29.03.2007, 12:56
Подскажите пожалуйста, атачу в цикле мувики, на мувики вешаю обработчик нажатия клавиатуры. В него засовываю вызо функции из рут с параметром р, но параметр всегда передается последний p. То есть если было 13 проходов цикла параметр для всех мувиков будт 13 ( Как сделать чтобы каждый клип передавал уникальный параметр?

for (i=0;i<_root.image.length;i++)
{
if (_root.tip[i]=="man1")
{
var mc = attachMovie("maika","maika"+i,i);
var loader = new MovieClipLoader();
loader.p = p;
loader.onLoadInit = function(mc) {
mc.onRelease = function() {
_root.go(p);
}
}
p++;
loader.addListener(loader);
loader.loadClip(_root.image[i], mc);
};
};

etc
29.03.2007, 13:12
Неужели нельзя было отформатировать код так, чтобы было понятно, где и какая скобка заканчивается, а?
И где ты используешь функцию с параметром p? В приведенном коде нигде.

Dragon rideR
29.03.2007, 14:19
Я же говорил что функция go с параметром р находится в руте function go(t:String) {
trace("Параметр="+t);
}

etc
29.03.2007, 14:32
Когда говорил, не было никакой функции, ты её добавил 15 минут назад.
loader.onLoadInit = function(mc) {
mc.p = this.p;
mc.onRelease = function() {
_root.go(this.p);
}

Решение корявое, но в данном случае оптимальное.

Dragon rideR
29.03.2007, 16:12
А можешь объяснить почему корявое?

etc
29.03.2007, 17:05
Потому что сохранение индекса аж через два объекта идет.