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

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

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

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
По умолчанию Как поймать rollOver при помощи событийной модели?

Есть мувик, на него вешается обработчик. Появилась необходимость навесить ещё один, независимый от второго (пихнуть всё в один никак). Получается второй обработчик затирает первый. Хочется по-нормальному подписаться на соответствующее событие, как в AS3. Не хочется насиловать комп через mouseMove и hitTest. На AS1/2 такое реально?
__________________
тонкий тролль, осеянный благодатью

Старый 15.06.2009, 14:45
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ооочень грубый пример:
Код AS1/AS2:
function registerListener(name, func) {
	var f = this[name];
 
	if (typeof f != 'function') {
		f = function() {
			var h = arguments.callee.handlers;
			var i = 0;
			var l = h.length;
 
			for ( i = 0; i < l;i++) {
				var ff = h[i];
				ff.call(this);
			}
		}
		f.handlers = new Array();
		this[name] = f;
	}
 
	f.handlers.push(func);
}
function handler1() {
	trace('handler1');
}
function handler2() {
	trace('handler2');
}
function handler3() {
	trace('handler3');
}
this.registerListener('onMouseMove', handler1);
this.registerListener('onMouseMove', handler2);
this.registerListener('onMouseDown', handler3);

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

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

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


 


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


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