Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.08.2008, 20:14
ambuddy вне форума Посмотреть профиль Отправить личное сообщение для ambuddy Найти все сообщения от ambuddy
  № 1  
Ответить с цитированием
ambuddy
 
Аватар для ambuddy

Регистрация: Aug 2006
Сообщений: 134
По умолчанию метод onRollOver через .prototype для мувиков в данном мувиклипе

Вот у нас есть мувиклип Tools, в котором есть куча мувиков. Хотелось бы чтобы метод onRollOver назначился для всех этих мувиков. Хочу использовать prototype, но ничего не получается. Работает только для вообще всех мувиклипов, а вот как это реализовать с помощью прототипа только внутри нужного мувиклипа???

Код:
MovieClip.prototype.onRollOver = function() { trace("!"); }
- работает вообще для всех мувиклипов(оно и понятно ).

А вот бы что-нить типа
Код:
Tools.MovieClip.prototype.onRollOver = function() { trace("!"); }
работало. Как это сделать?
__________________
я только учусь...

Старый 26.08.2008, 21:07
BBOY Ильич вне форума Посмотреть профиль Отправить личное сообщение для BBOY Ильич Найти все сообщения от BBOY Ильич
  № 2  
Ответить с цитированием
BBOY Ильич
 
Аватар для BBOY Ильич

Регистрация: Nov 2007
Сообщений: 256
Записей в блоге: 1
Отправить сообщение для BBOY Ильич с помощью ICQ
Код:
MovieClip.prototype.RollOver = function() { this.onRollOver = function (){trace("!"); }};

Tools.RollOver();

Старый 27.08.2008, 13:13
ambuddy вне форума Посмотреть профиль Отправить личное сообщение для ambuddy Найти все сообщения от ambuddy
  № 3  
Ответить с цитированием
ambuddy
 
Аватар для ambuddy

Регистрация: Aug 2006
Сообщений: 134
т.е. все равно придется для каждого внутреннего мувика назначать:
Код:
Tools.brush.RollOver();
или перебирать их for(i in Tools)? Тогда смысл в прототипе?

Смысл моего вопроса был в том, чтобы любой созданный/имеющийся мувиклип внутри Tools имел onRollOver = function (){ trace("!"); } по умолчанию, т.е. чтобы не надо было это специально присваивать.
__________________
я только учусь...


Последний раз редактировалось ambuddy; 27.08.2008 в 13:20.
Старый 27.08.2008, 14:07
chingachgoog вне форума Посмотреть профиль Найти все сообщения от chingachgoog
  № 4  
Ответить с цитированием
chingachgoog
Banned
[+4 01.02.09]
[+1 01.02.09]
 
Аватар для chingachgoog

блогер
Регистрация: Nov 2006
Адрес: Moscow
Сообщений: 2,145
Записей в блоге: 7
Создайте свой класс (функцию).
В прототипе этого класса назначьте свой обработчик.
Циклом в Tools перебираете мувики и назначаете указатель __proto__ в них на прототип своего класса.

Или другой вариант - в вашем коде выше, ставите в обработчике условие-проверку _parent - если это Tools - то выполняется действие.

Старый 27.08.2008, 14:16
ambuddy вне форума Посмотреть профиль Отправить личное сообщение для ambuddy Найти все сообщения от ambuddy
  № 5  
Ответить с цитированием
ambuddy
 
Аватар для ambuddy

Регистрация: Aug 2006
Сообщений: 134
Цитата:
Сообщение от chingachgoog Посмотреть сообщение
Циклом в Tools перебираете мувики и назначаете указатель __proto__ в них на прототип своего класса.
хм... Вы мой предыдущий пост читали? Чтобы не приходилось назначать это с использованием цикла. Это так перебором можно и без прототипов всяких обойтись Что я раньше всегда и делал. А вот тут решил разобраться с прототипами.

Цитата:
Сообщение от chingachgoog Посмотреть сообщение
Или другой вариант - в вашем коде выше, ставите в обработчике условие-проверку _parent - если это Tools - то выполняется действие.
А вот в этом есть рац.зерно Наверное так и придется делать...
__________________
я только учусь...

Старый 27.08.2008, 14:43
chingachgoog вне форума Посмотреть профиль Найти все сообщения от chingachgoog
  № 6  
Ответить с цитированием
chingachgoog
Banned
[+4 01.02.09]
[+1 01.02.09]
 
Аватар для chingachgoog

блогер
Регистрация: Nov 2006
Адрес: Moscow
Сообщений: 2,145
Записей в блоге: 7
Цитата:
Сообщение от ambuddy Посмотреть сообщение
хм... Вы мой предыдущий пост читали?
Ага, читал. Вы там не поняли зачем нужны прототипы.

Цитата:
Сообщение от ambuddy Посмотреть сообщение
Чтобы не приходилось назначать это с использованием цикла. Это так перебором можно и без прототипов всяких обойтись
Конечно можно.
Но с прототипами (классами) быстрее и рациональнее, как только число обработчиков будет больше одного

Создать новую тему Ответ Часовой пояс GMT +4, время: 16:28.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 16:28.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.