control.Group

Расширяет IControl, IControlParent, ICustomizable, IMapObjectCollection.

Группа (упорядоченная коллекция) элементов управления.

Конструктор | Поля | События | Методы

Конструктор

control.Group([params[, options]])

Параметры:

Параметр Значение по умолчанию Описание
params

Тип: Object|IControl[]

Настройки группы элементов управления. Если в качестве настроек передан массив элементов управления, он трактуется как список дочерних элементов.

params.items

Тип: IControl[]

Список дочерних элементов.

options

Тип: Object

Опции.

options.position { top: 5, left: 5 }

Тип: Object

Положение элемента управления над картой. Задается в виде объекта со следующими полями:
  • top - отступ от верхнего края контейнера карты в пикселах;
  • right - отступ от правого края контейнера карты в пикселах;
  • bottom - отступ от нижнего края контейнера карты в пикселах;
  • left - отступ от левого края контейнера карты в пикселах.
Если при этом заданы одновременно и top, и bottom, то значение bottom игнорируется. Аналогично, если заданы одновременно и left, и right, то значение right игнорируется. Если элемент управления добавляется в группу элементов (например, в тулбар или раскрывающийся список), то значение position не применяется.
options.visible true

Тип: Boolean

Признак того, что элемент управления отображается.

Поля

Имя Тип Описание
data data.Manager

Данные группы.

events IEventManager

Менеджер событий.

Унаследовано от IEventEmitter.

options IOptionManager

Менеджер опций.

Унаследовано от ICustomizable.

state data.Manager

Состояние группы.

События

Имя Описание
add

Произошло добавление дочернего объекта.

Унаследовано от ICollection.

childcontainerchange
Изменение дом-элемента, в который добавляются дочерние элементы группы. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • newChildContainerElement - новый дом-элемент для дочерних элементов;
  • oldChildContainerElement - старый элемент для дочерних элементов.
mapchange
Сменилась карта. Поля данных:
  • oldMap - старая карта;
  • newMap - новая карта.

Унаследовано от IParentOnMap.

optionschange

Изменение в опциях объекта.

Унаследовано от ICustomizable.

parentchange

Сменился родительский объект.

Поля данных:

  • oldParent - старый родитель;
  • newParent - новый родитель.

Унаследовано от IChild.

remove

Произошло удаление дочернего объекта.

Унаследовано от ICollection.

Методы

Имя Возвращает Описание
add(item[, positionIndex])

control.Group

Добавляет элемент управления в группу. Элемент можно добавлять, передав экземпляр класса, реализующего интерфейс IControl, или по ключу.

Возожные значения ключей:

each(callback[, context])

control.Group

Перебирает все элементы коллекции, вызывая для каждого функцию-обработчик.

filter(callback)

IChildOnMap[]

Функция для выборки дочерних элементов по условию.

get()

IChildOnMap

Returns ссылку на объект контрола, добавленного по ключу или по индексу.

getAll()

IChildOnMap[]

Returns массив дочерних элементов контрола.

getChildElement(child)

HTMLElement

Возвращает для своего дочернего объекта HTML-элемент, в котором он должен размещаться.

Унаследован от IControlParent.

getContainer()

HTMLElement

Returns контейнер, в который добавляются дочерние элементы контрола.

getIterator()

IIterator

Returns итератор по коллекции.

Унаследован от ICollection.

getLength()

Number

Returns количество дочерних элементов.

getMap()

Map

Returns ссылку на карту.

Унаследован от IParentOnMap.

getParent()

IControlParent

Returns ссылку на родительский объект.

Унаследован от IControl.

indexOf(childToFind)

Integer

Returns индекс дочернего элемента в группе.

remove(item)

control.Group

Удаляет элемент управления из группы.

removeAll()

control.Group

Удаляет все дочерние элементы из группы.

setParent(parent)

IChildOnMap

Устанавливает родительский объект.

Унаследован от IControl.

Описание полей

data

Данные группы.

state

{data.Manager} state

Состояние группы.

Описание событий

childcontainerchange

Изменение дом-элемента, в который добавляются дочерние элементы группы. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
  • newChildContainerElement - новый дом-элемент для дочерних элементов;
  • oldChildContainerElement - старый элемент для дочерних элементов.

Описание методов

add

Добавляет элемент управления в группу. Элемент можно добавлять, передав экземпляр класса, реализующего интерфейс IControl, или по ключу.

Возожные значения ключей:

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

Параметры:

Параметр Значение по умолчанию Описание
item *

Тип: IControl|String

Элемент управления или его ключ.

positionIndex

Тип: Integer

Позиция вставки элемента. Если не задана, элемент добавляется в конец списка.

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

Пример:

var groupControl = new ymaps.control.Group();
// Добавляем элемент управления типами карты.
groupControl.add(new ymaps.control.TypeSelector(), 1);
// Добавляем стандарный набор элементов управления картой.
groupControl.add(new ymaps.control.MapTools(), 0);
map.controls.add(groupControl);

each

Перебирает все элементы коллекции, вызывая для каждого функцию-обработчик.

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

Параметры:

Параметр Значение по умолчанию Описание
callback *

Тип: Function

Функция-обработчик.

context

Тип: Object

Контекст выполнения функции.

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

filter

{IChildOnMap[]} filter(callback)

Функция для выборки дочерних элементов по условию.

Returns массив дочерних элементов.

Параметры:

Параметр Значение по умолчанию Описание
callback *

Тип: Function

Функция-обработчик дочерних элементов контрола. Получает на вход ссылку на элемент контрола и возвращает значение true/false. Дочерние элементы, для которых функция-обработчик возвращает true, будут добавлены в результирующий массив.

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

get

{IChildOnMap} get()

Returns ссылку на объект контрола, добавленного по ключу или по индексу.

Параметры:

Параметр Значение по умолчанию Описание
key *

Тип: String|Number

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

getAll

{IChildOnMap[]} getAll()

Returns массив дочерних элементов контрола.

getContainer

{HTMLElement} getContainer()

Returns контейнер, в который добавляются дочерние элементы контрола.

getLength

{Number} getLength()

Returns количество дочерних элементов.

indexOf

{Integer} indexOf(childToFind)

Returns индекс дочернего элемента в группе.

Параметры:

Параметр Значение по умолчанию Описание
childToFind *

Тип: String|IControl

Дочерний элемент или его ключ.

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

remove

Удаляет элемент управления из группы.

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

Параметры:

Параметр Значение по умолчанию Описание
item *

Тип: IControl|String

Элемент управления или его ключ.

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

removeAll

{control.Group} removeAll()

Удаляет все дочерние элементы из группы.

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