12.03.2004, 12:11
|
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
тавагисчи :)
евал никому уже давнооо не нужен.
к любому методу/свойству объекта можно обратиться двумя способами:
1. имя_объекта.имя_свойства
2. имя_объекта["имя_свойства"]
в первом случае имя_свойства - это любой допустимый идентификатор
во втором случае имя_свойства - это строка. (или любое выражение в результате выполнения которого получается строка)
на данном примере:
есть объект _root, внутри него создаем объект с именем bname. (а bname - это строка)
значит после создания можно будет обратиться к нему так: _root[bname]
но тут даже это не нужно - функция createEmptyMovieClip возвращает ссылку на созданный ею клип.
я обычно, чтобы не писать лишнего, делаю как-то так:
var mc = _root.createEmptyMovieClip(bname, k);
и после этого обращаюсь к mc, чтобы установить какие-то свойства клипа.
функция attachMovie, кстати, тоже возвращает ссылку на приаттаченный клип. этим удобно пользоваться:
var btn = _root[bname].attachMovie("button", captionb, 2);
btn._x = 123;
btn._y = 456;
запись получается гораздо короче..
но можно конечно и так:
_root[bname].attachMovie("button", captionb, 2);
_root[bname][captionb]._x = 123;
_root[bname][captionb]._y = 456;
..такое обращение уже смотрится как операция с двумерным ассоциативным массивом
|