![]() |
Присвоить акции продуплицированному клипу! Можно ль?
Суть проблемы слкедующая. Есть мувиклип. Я его дуплицирую ( или аттачу, неважно ), например, в количестве 100 экземпляров. Есть ли способ ( думаю нет, но могу не знать :) ) сделать так, чтобы, допустим, onKeyUp для каждого (!!!) из этих 100 мувиклипов делались СВОИ действия, зависящие от имени данного мувиклипа.
---- НЕ ИНТЕРЕСНЫ СЛЕДУЮЩИЕ ПРЕДЛОЖЕНИЯ В ВИДУ СВОЕЙ ОЧЕВИДНОСТИ: 1. вставить в эти мувики по клипу, например, невидимому, который будет выполнять функцию в зависимости от имени _parent. 2. всякие там 2-хкадровые лупы для замены onEnterFrame. |
onClipEvent (keyUp) {
_parent.func(Key.getCode(), _name); } В функции и описывай действия :) |
А как насчет таких "очевидных" вещей как выполнение функции в зависимости от имени мувика (movik_n._name)? Или например в каждом или только в требуемых мувиках прописывать требуемую функцию. И вызывать ее не зависимо есть она или ее в данной копии в принципе нет?
|
2gOloVasTicK '~: Я про это и писал :) , но это слишком просто и очевидно. А вот есть ли другой способ?
2ATM: Вызывать функцию надо не извне, а из самого мувика. Оптимизация требует распараллеливание процесса выполнения скрипта, то есть нельзя перебирать все имена мувиков в цикле и делать с ними действия. Вот и интересно - есть ли способ динамически приписать акции к мувику или к фрейму? |
Может сделать в мувике такой обработчик:
onClipEvent (keyUp) { virtFunc(Key.getCode()); } А каждому экземпляру мувика эту функцию присвоить свою: MovieClip1.virtFunc=function(keyCode){ ...действия для 1-го... } MovieClip2.virtFunc=function(keyCode){ ...действия для 2-го... } ну и т.д. я, честно говоря, так не пробовал, но может сработает если сработает, напиши, плиз |
Это просто.
Вложений: 1
Делатся это весьма незатейливо. В моем примере я продублировал 5 мувиков со стандартной кнопкой с именами mu1...mu5. Затем для каждой из них написал обработчики событий - функции f1...f5.
Для первой самой кнопки, которая дублируется - пишем обращение к функции: on (release) { nm=this._name; n=nm.substr(2,1); callFunction="f"+n; _root[callFunction](); } Собственно, и все дела. Каждая кнопка обрабатывает свое событие (свою функцию). Исходник вкладываю. |
Спасибо, народ! Все равно это немного не то, но в процессе обсуждения узнал много интересного!
|
Ну, замени онрелиз на онклипевент, что от этого изменится по существу? Тебе ведь нужна была обработка события по имени - так она и будет.
|
Я кажется опоздал на разговор...
В общем есть кул функция eval();
Дльше делайте что хотите, а за примеры спасибо! |
2vol: Главное, что то же самое я и говорил! Только внутрь мувика вставляем клип и функцию вызываем относительно _parent._name.
А я просто думал, что может существовать некая функция типа setFun(movieClipName, function) :) :) , например недокументированная. И еще подвопрос: можно ли получить имя мувиклиипа вместе с абсолютным путем ( непросто _name=mc, а _root.mc1....mc )? |
вроде бы свойство клипа _target это делает, если я тебя правильно понял и мы об одном говорим.
|
| Часовой пояс GMT +4, время: 00:01. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.