Просмотр полной версии : Левый eval(), вызывающий ошибку и способы решения.
При динамичном создании команды с помощью Eval() выдается ошибка. Описаниие можно наити здесь (http://www.vmstudio.com/materials.php?eval).
Там сказано, что это появилось начиная с Flash 6, и для решения нужно изменить Eval() на this[].
Но это не помогло.
Кто-нибудь пользовался этим? В чем может быть ошибка?
Какая проблема конкретно у тебя ?!
Проблема была в том, что при попытке присвоить какое-либо значение к функции eval(), которая должна была сгенерировать обращение к свойству объекта, выдавалась ошибка о невозможности данной операции.
Почему жто происходит можно прочитать, проидя по ссылке в верхнем посте.
Но то решение, которое там предложено у меня не сработало. Ошибки оно не выдало, но и результата не дало.
Но помогло другое - использование SET (). Может еще кому пригодится.
Находится здесь. (http://www.macromedia.com/support/flash/action_scripts/actionscript_dictionary/actionscript_dictionary200.html)
для того, чтобы сконструировать обращение к переменной _root.myVar92 нужно использовать
i=92;
_root["myVar"+i] = someThing;
для _root.mc.myVar92 аналогично
_root.mc["myVar"+i] = someThing;
для обращения из тайм-лайн mc или из его функций
this["myVar"+i]=someThing;
и т.д. по аналогии. eval вообще использовать не надо. и нужно описывать конкретную проблему, чтобы получить конкретный ответ. общий писать лень.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.