
12.09.2002, 02:45
|
|
Регистрация: Jan 2002
Сообщений: 1,323
|
mc.onPress=... mc.onRollOver=... mc.onEnterFrame=... mc.onKillFocus=... и т.д.
Это не вопрос, это решение проблемы. Если она у кого-нть возникнет. На форуме не нашел, поэтому и пишу.
А возникает проблема тогда, когда из скрипта на мувик пытаемся повесить какой-нибуь обработчик. Допустим, есть три мувика mc1, mc2 и mc3. Хотим, чтобы при нажатии на какой-либо из них выводился его номер. Пишем:
for(i=1;i<4;i++)
eval("mc" add i).onPress=function(){trace(i);};
stop();
Кликаем на мувики. Результат один - 4. Что и следовало ожидать - это значение переменной i после окончания цикла.
А нужно совсем другое. Делаем "раз":
function setonpress(clip,n){
clip.onPress=function(){trace(n);}
}
Делаем "два":
for(i=1;i<4;i++)
setonpress(eval("mc" add i),i);
stop();
И всё прекрасно работает. Как видите, вместо локальной переменной флэш берет её значение, а не ссылку на неё, как в первом случае.
Я закончил. Спасибо за внимание.
|