|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Dec 2010
Сообщений: 177
|
Практика изменения параметра useCapture у функции addEventListener
У addEventListener есть параметр useCapture:Boolean (default = false), которая регулирует фазу/место вызова события. А на практике, в чем разница, если событие будет обрабатываться в фазе захвата или же в фазе цели и восхождения. Вероятно, это влияет на приоритет выполнения событий…
В каких практических случаях, обычно используются различные значения useCapture? |
|
|||||
Например, когда нужно сделать что-то до выполнения собственно обработчика события. Скажем, если кнопка не прямоугольная, может быть более точная проверка на хит-тест по пикселям кнопки, и отмена обработки события клика, если пользователь попал мышкой по спрайту, но не попал собственно по изображению кнопки.
__________________
interplanety |
|
|||||
Регистрация: Feb 2010
Адрес: Город суеты
Сообщений: 191
|
Есть контейнер A, в нем лежит спрайт B. Внутри класса B слушается событие клика мыши. Но класс A хочет уметь контролировать клики мыши внутри класса B, т.е. пропускать или не пропускать событие CLICK в определенный момент. Конечно есть множество способов решить эту проблему, например класс B в момент получения события может спрашивать у родителя разрешения на выполнения(через callback). Но это плохая практика, потому что класс B становится зависимым от A. Но по условию задачи класс A должен сам решать пускать событие в B или нет, поэтому мы можем слушать событие клика в фазе захвата в классе A, и отменять его при необходимости.
__________________
FlashPress.ru | Blog |
Часовой пояс GMT +4, время: 02:29. |
|
« Предыдущая тема | Следующая тема » |
|
|