![]() |
|
||||||||||
|
|||||
|
Регистрация: Jul 2009
Сообщений: 12
|
Здравствуйте!
Есть на одной странице два разных flash. Первый - кнопка, при наведении мышью на которую меняется вторая анимация. Т.о. необходимо передать параметр - название второго ролика и подгрузить его. Подскажите, пожалуйста, возможно ли так сделать и каким образом? Спасибо! |
|
|||||
|
Модрон-ветеринар
|
Сделайте для управляемого ролика контейнер, куда будете загружать разные варианты swf-ок.
И с помощью класса External Interface из управляющего ролика давайте инструкции этому контейнеру подгружать то или иное содержимое. |
|
|||||
|
Регистрация: Jul 2009
Сообщений: 12
|
Если вас не затруднит, можно примерчик небольшой. Я не так давно работаю с flash просто.
|
|
|||||
|
Модрон-ветеринар
|
Примерчик кода? Готовый есть, но он вам не совсем подойдет.
Писать нужно и тестировать. Начнем с конца цепочки. 1. Делаете флешку-контейнер. В ней пишите функцию загрузки роликов. У функции один параметр - url ролика, который нужно загрузить. Для самой загрузки используете класс MovieClipLoader. Далее работаете с ExternalInterface, регистрируете имя функции JavaScript, которая будет вызываеть извне эту функцию загрузки с помощью метода ExternalInterface.addCallback. 2. На странице пишите JavaScript - функцию, имя которой соответствует зарегистрированному выше имени. При ее вызове она должна будет получить параметр, равный URL нового ролика. Когда она обратится к флешке (которая уже знает о возможности такого вызова), она передаст ей нужный параметр и та заработает. 3. Управляющая флешка. В ней все просто. Рисуете кнопку, по событию нажатия с помощью метода ExternalInterface.call вызываете внешнюю JavaScript функцию (которая у нас уже есть на странице), передавая ей параметр url, а та, в свою очередь, обращается к управляемой флешке, которая к этому готова, ведь в ней эта готовность прописана с помощью ExternalInterface.addCallback. Цепочка работает, я делал нечто подобное. Но для новичка может оказаться сложновато, много тестировать нужно, сразу без ошибок никогда не получается практически наладить такую цепочку, тут несколько слабых звеньев, и самое слабое, которому нужно уделить внимание - правильно написать JS-функцию, чтобы она правильно находила опубликованную на странице флешку-контейнер и вызывала бы внутри нее прописанную там функцию с передачей параметра. Прочитайте о загрузке swf-ок с помощью класса MovieClipLoader и о взаимодействии с внешней средой с помощью класса ExternalInterface. Добавлено через 3 минуты Можно опустить 2 пункт, сделать так, чтобы нужная JS-функция генерировалась "на лету" из управляющей флешки, но при этом ее имя все-таки должно быть прописано в управляемой, в методе ExternalInterface.addCallback. Последний раз редактировалось mooncar; 30.07.2009 в 00:29. |
|
|||||
|
Регистрация: Jul 2009
Сообщений: 12
|
спасибо... буду пробовать
|
![]() |
![]() |
Часовой пояс GMT +4, время: 12:35. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|