Просмотр полной версии : Прошу помочь всех,кто разбирается с eval
Уже неделю мучаюсь с eval. Просмотрел все хелпы и примеры, ничего нужного не нашел. Прошу помочь!
Вот последовательность действий.
1) Дублирую мувик.
duplicateMovieClip(_root.clip, eval(_root.clip._name+i.toString()), i);
2) Теперь мне надо чтобы дублированый мувик gotoAndStop на второй свой кадр.
Пробовал двумя способами, оба не работают:
первый:
tellTarget(eval(_root.clip._name+i.toString())) {gotoAndStop(2);}
второй:
eval(_root.clip._name+i.toString()).gotoAndStop(2);
Armen Khanoyants
23.07.2003, 18:44
используй this["name"+i], это тоже что и this.eval("name"+i)
ну и соответственно _root[....], _parent[....]
если с eval, то записывай так:
duplicateMovieClip(_root.clip, "clip"+i, i);
eval("clip"+i).gotoAndStop(2);
очень просто
сделай своей конструкции
trace (eval(_root.clip._name+i.toString()))
чего там показывает? то что потом вызываешь?
Спасибо за отклик!
Извиняюсь за то, что долго не отвечал - инет кончился.
Написал trace, но он выдает
undefined
Создать он его не успевает, что ли?
Имя клипа - "clip"
Попробовал написать
trace(this._name+i.toString());
Он выдает только "clip", без цифры, если без toString() - то же самое.
Если написать:
trace(eval(this._name+i.toString()));
То опять получаю undefined. Точно так же, если пишу без toString().
Имя клипа - "clip"
Попробовал написать
trace(this._name+i.toString());
Он выдает только "clip", без цифры, если без toString() - то же самое.
Если написать:
trace(eval(this._name+i.toString()));
То опять получаю undefined. Точно так же, если пишу без toString().
Пожалуйста, помогите снова - подсказанные вами методы не сработали, может, дело не в вызове.
Вот исходник - в нем я все сильно упростил, чтобы скинуть размер, однако и он не хочет работать.
Слушай, ты хелп вообще читал, прежде чем браться за дело?duplicateMovieClip(_root.clip, eval(_root.clip._name+i.toString()), i);Зачем тебе здесь-то нужен евал?
У duplicateMovieClip() второй параметр - строка, евал же возвращает объект.
Я нифига не понял, чего ты вообще добиваешься, но обычно подобный код выглядит так:name = "clip" + i;
duplicateMovieClip(_root.mc, name, i);
eval(name).gotoAndStop(2);Но лучше для начала расскажи, какой эффект ты рассчитываешь получить от своего кода?
просто сделай что сказал derhab
duplicateMovieClip(_root.clip, "clip"+i, i);
eval("clip"+i).gotoAndStop(2);
очень просто
так как у тебя клип называется "clip"
то это уже готовое решение для тебя :D
Читая хелп и смотря исходники я не раз пытался применить все эти способы. Однако если вы попробуете любой из них вписать в представленный мной файл, то скорее всего ничего не выйдет. Я уже не раз пытался.
Добиться я хочу того, чтобы можно было брать прямоугольный мувик мышкой, перетаскивать его на нужное место и ставить там. Точнее, ставится его копия, причем копию надо перевести во второй кадр.
Вот такая картина. Кто сможет, пожалуйста выложте исходник.
Хелп плохо читал...Однако если вы попробуете любой из них вписать в представленный мной файл, то скорее всего ничего не выйдет.Надо было поспорить с тобой, да ладно уж...
В комментариях - изменения в сравнении с твоим вариантом.
Изменения я видел, и очень благодарен всем за внимание.
Не хотелось бы ламерить, но все равно не догоняю почему после подстановки кода ничего не работает...
Если кому не влом, выложите, пожалуйста, работающий исходник.
p.s. мне действительно он очень нужен.
Огромное тебе спасибо Useless!
Если встетимся, то с меня пиво! Или что тебе из выпивки больше нравится...
Спасибо за помощь Armen Khanoyants, Lukasus и derhab
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.