Пример подписки на событие mousemove, используются NavigationEventOptions, заданные по умолчанию:
navigationAgent.canvasNavigationSource.addEventListener("mousemove",onMouseMove);//или
navigationAgent.canvasNavigationSource.addEventListener("mousemove",onMouseMove,false);//capture: false
//Те же опции, указанные явно:
navigationAgent.canvasNavigationSource.addEventListener("mousemove",onMouseMove,newNavigationEventOptions(false,NavigationHandlerPriority.DefaultNavigation,false,undefined));//Для отписки от события, нужно передавать те же параметры, что и при подписке:
navigationAgent.canvasNavigationSource.removeEventListener("mousemove",onMouseMove,newNavigationEventOptions(false,NavigationHandlerPriority.DefaultNavigation,false,undefined));
keyboardNavigationSource
Источник DOM-событий для навигации с помощью клавиатуры. Подробнее: INavigationEventSource.
Пример подписки на событие keyup, используются NavigationEventOptions, заданные по умолчанию:
navigationAgent.keyboardNavigationSource.addEventListener("keyup",onMouseMove);//или
navigationAgent.keyboardNavigationSource.addEventListener("keyup",onKeyUp,{capture:false});//Те же опции, указанные явно:
navigationAgent.keyboardNavigationSource.addEventListener("keyup",onKeyUp,newNavigationEventOptions(false,NavigationHandlerPriority.DefaultNavigation,false,'desktopNavigation'));//Для отписки от события, нужно передавать те же параметры, что и при подписке:
navigationAgent.keyboardNavigationSource.removeEventListener("keyup",onKeyUp,newNavigationEventOptions(false,NavigationHandlerPriority.DefaultNavigation,false,'desktopNavigation'));
Свойства
isActive()
Свойство определяет активность агента навигации.
getisActive():boolean;setisActive(value:boolean);
Методы
getNavigationArea()
Метод позволяет получить прямоугольник текущей рабочей области навигации.
В десктопной реализации навигации, при перемещении курсора за пределы рабочей области навигации происходит деактивация источника событий клавиатуры. При возвращении курсора в рабочую область происходит активация источника событий клавиатуры.
Таким образом, события клавиатуры не генерируются если курсор находится за пределами рабочей области.
INavigationEventSource
INavigationEventSource – интерфейс источника событий навигации.
exportinterfaceINavigationEventSource{// Свойство определяет активность источника событий навигации.
getisActive():boolean;setisActive(value:boolean);addEventListener<TextendskeyofNavigationEventSourceEventMap>(type:T,listener:(this:object,ev:NavigationEventSourceEventMap[T]&NavigationEvent)=>void,options?:boolean|EventListenerOptions|NavigationEventOptions):void;removeEventListener<TextendskeyofNavigationEventSourceEventMap>(type:T,listener:(this:object,ev:NavigationEventSourceEventMap[T]&NavigationEvent)=>void,options?:boolean|EventListenerOptions|NavigationEventOptions):void;}
NavigationEventSourceEventMap
NavigationEventSourceEventMap – события, генерируемые источником событий навигации.
Расширяет HTMLElementEventMap – список встроенных DOM событий.
где: active – событие возникающее при изменении активности данного источника событий навигации. Подробнее: ActiveEvent.
ActiveEvent
Представляет событие, которое происходит при изменении активности источника событий навигации.
Расширяет Event.
exportinterfaceActiveEventextendsEvent{// Активность источника событий навигации.
readonlyisActive:boolean}
NavigationEvent
NavigationEvent – базовый класс события навигации.
exportclassNavigationEvent{// Задает и показывает было ли обработано событие.
isHandled?:boolean;}
NavigationEventOptions
NavigationEventOptions – опции подписки на событие навигации.
exportclassNavigationEventOptionsimplementsEventListenerOptions{// Перехват события при всплытии (false), иначе при погружении (true). По умолчанию: false.
capture:boolean;// Приоритет вызова обработчиков: от наибольшего к наименьшему. По умолчанию: NavigationHandlerPriority.CustomExtensions.
priority:number|NavigationHandlerPriority;// Перехват события, если событие уже было обработано ранее (true), иначе событие игнорируется (false). По умолчанию false.
alwaysHandle:boolean;// Идентификатор подписчика на событие. Необязательный параметр.
navigationTargetName?:string;}
NavigationHandlerPriority
NavigationHandlerPriority – приоритет вызова обработчиков события навигации.
Обработчики вызываются в порядке убывания приоритета: от CustomExtensions к DefaultNavigation.