Руководство по actionscript. часть 4, стр. 016

Определение текущей фазы события

Как уже известно из подразд. «Регистрация приемника предка для фазы захвата и фазы всплытия» разд. «Приемники событий и цепочка диспетчеризации событий», дважды вызвав метод addEventListener ( ), можно зарегистрировать одну и ту же функцию-приемник события как для фазы захвата, так и для фазы всплытия процесса диспетчеризации события. В подразд. «Двойное назначение параметра useCapture» разд. «Приемники событий и цепочка диспетчеризации событий» мы также узнали, что приемник события, при регистрации которого параметру useCapture было установлено значение false, может вызываться как в фазе получения, так и в фазе всплытия диспетчеризации события. Следовательно, когда в ответ на возникшее событие выполняется функция-приемник события, текущая фаза события будет известна не всегда. В соответствии с этим язык ActionScript предоставляет переменную экземпляра eventPhase класса Event, которая может быть использована внутри функции-приемника события для определения текущей фазы события.

Переменная eventPhase содержит информацию о том, в какой фазе находится текущий процесс диспетчеризации события — захвата, получения или всплытия.

Когда процесс диспетчеризации события находится в фазе захвата, переменной eventPhase присваивается значение EventPhase. CAPTURING_PHASE, которое означает, что объект-получатель еще не получил уведомление о возникновении события.

Когда процесс диспетчеризации события находится в фазе получения, переменной eventPhase присваивается значение EventPhase. ATTARGET, которое означает, что в настоящий момент объект-получатель обрабатывает событие.

Когда процесс диспетчеризации события находится в фазе всплытия, переменной eventPhase присваивается значение EventPhase. BUBBLING_PHASE, которое означает, что объект-получатель завершил обработку события.

Обычно константам EventPhase. CAPTURING_PHASE, EventPhase. AT_TARGET и EventPhase. BUBBLING_PHASE присваиваются значения 1, 2 и 3 соответственно, но эти значения со временем могут измениться, поэтому использовать их непосредственно в коде не следует. Вместо этого, чтобы определить текущую фазу события внутри функции-приемника события, всегда сравнивайте значение переменной eventPhase с константами класса EventPhase. Например, всегда используйте код наподобие следующего:

private function someListener (e:Event):void { if (e. eventPhase = EventPhase. AT TARGET) {

// Этот приемник был вызван в фазе получения…

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 13.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.90
  • 12.08.2010">Как подают информацию о владельце, команде
  • 07.03.2011">Руководство по actionscript. часть 4, стр. 116
  • 27.02.2011">Руководство по actionscript. часть 6, стр. 027
  • 21.06.2011">Объективные стороны рестайлинга сайтов.
  • 17.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.124
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.91
  • 14.08.2011">Система видеонаблюдения – выбери лучшее
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.55
  • 22.12.2011">Samsung производит процессоры A5 для Apple iPhone 4S и iPad 2
  • 10.02.2011">Выбор формата сохранения изображения в Photoshop
  • 06.07.2011">Новая серия ультрапортативных ноутбуков Acer
  • 03.03.2011">Руководство по actionscript. часть 5, стр. 056
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.114
  • 14.03.2011">Руководство по actionscript. часть 3, стр. 069
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...