---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/llms.txt

# Manager

Расширяет [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md).

Менеджер событий с распространением. Распространение события происходит в три фазы:

1. Событие получают непосредственные подписчики;

2. Событие получают вышестоящие в иерархии объекты посредством перебрасывания события на родительском менеджере событий;

3. Событие получают обработчики действия по умолчанию посредством служебного события type + 'defaultaction'; действие по умолчанию выполняется, только если поле target события совпадает с контекстом менеджера событий.

## Конструктор {#constructor}

```javascript
event.Manager([options])
```

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `options` | — | Тип: Object

Опции менеджера событий. ||
|| `options.context` | — | Тип: Object

Объект, для которого создан менеджер событий. ||
|| `options.controllers` | — | Тип: [IEventWorkflowController](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventWorkflowController.md)[]

Контроллер или контроллеры менеджера событий. ||
|| `options.parent` | — | Тип: [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md)

Родительский менеджер событий. ||
|#

## Методы {#method}

#|
|| **Имя** | **Возвращает** | **Описание** ||
|| [add](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#add)([types](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#add-param-types), [callback](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#add-param-callback)[, [context](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#add-param-context)]) | [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md) | Добавляет новую подписку.

Унаследован от [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#add). ||
|| [createEventObject](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#createEventObject)([type](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#createEventObject-param-type), [event](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#createEventObject-param-event), [target](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#createEventObject-param-target)) | [Event](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/Event.md) | Функция, которая создает объект-событие. Вызывается в методе fire, когда переданный объект не является экземпляром класса Event или его наследником. ||
|| [fire](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#fire)([type](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#fire-param-type)[, [event](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#fire-param-event)]) | [event.Manager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md) | Бросает событие. ||
|| [getParent](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#getParent)() | [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md) | Returns родительский менеджер событий. ||
|| [group](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#group)() | [IEventGroup](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventGroup.md) | Returns контейнер событий, привязанный к данному менеджеру.

Унаследован от [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#group). ||
|| [remove](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#remove)([types](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#remove-param-types), [callback](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#remove-param-callback)[, [context](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#remove-param-context)]) | [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md) | Удаляет существующую подписку.

Унаследован от [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md#remove). ||
|| [setParent](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#setParent)([parent](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md#setParent-param-parent)) | [event.Manager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/event.Manager.md) | Задаёт родительский менеджер событий. ||
|#

## Описание методов {#description-methods}

### createEventObject

```javascript
{Event} createEventObject(type, event, target)
```

Функция, которая создает объект-событие. Вызывается в методе fire, когда переданный объект не является экземпляром класса Event или его наследником.

**Returns** объект-событие.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `type`[*](*parametr) | — | Тип: String

Тип события. ||
|| `event`[*](*parametr) | — | Тип: Object

Объект, описывающий событие. ||
|| `target`[*](*parametr) | — | Тип: Object

Объект, на котором произошло событие. ||
|#

\* Обязательный параметр/опция.

### fire

```javascript
{event.Manager} fire(type[, event])
```

Бросает событие.

**Returns** ссылку на себя.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `type`[*](*parametr) | — | Тип: String

Тип события. ||
|| `event`| — | Тип: Object\|[Event](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/Event.md)

Объект, описывающий событие. Если передан хэш с данными, то для него будет вызван метод createEventObject, и дальнейшие действия будут производиться с новым созданным событием. Значение isImmediatePropagationStopped() проверяется в каждой фазе распространения событий. Значение isPropagationStopped() проверяется перед фазой bubblingEvent. Значение isDefaultPrevented() проверяется перед фазой defaultaction. ||
|#

\* Обязательный параметр/опция.

### getParent

```javascript
{IEventManager} getParent()
```

**Returns** родительский менеджер событий.

### setParent

```javascript
{event.Manager} setParent(parent)
```

Задаёт родительский менеджер событий.

**Returns** ссылку на себя.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание** ||
|| `parent`[*](*parametr) | — | Тип: [IEventManager](https://yandex.ru/dev/maps/archive/doc/jsapi/2-0/ru/ref/reference/IEventManager.md)

Родительский менеджер событий. ||
|#

\* Обязательный параметр/опция.

[*parametr]:Обязательный параметр/опция.
