objectManager.Balloon
Расширяет IBalloonManager.
Менеджер балуна коллекций ObjectManager. Позволяет управлять балуном объекта, открывать и скрывать его. Использует внутри себя менеджер балуна карты map.Balloon. Коллекции объектов в составе ObjectManager содержат экземпляр этого класса, доступный как myObjectManager.objects.balloon и myObjectsLayer.clusters.balloon. Не создавайте экземпляры этого класса без необходимости.
См.:Balloon
Конструктор | Поля | События | Методы
Конструктор
objectManager.Balloon(collection)
Параметры:
Параметр |
Значение по умолчанию |
Описание |
— |
Тип: IReadOnlyCollection Коллекция объектов. |
* Обязательный параметр/опция.
Поля
Имя |
Тип |
Описание |
Менеджер событий. Унаследовано от IEventEmitter. |
События
Имя |
Описание |
Начало автоматического перемещения центра карты, вызванного методом autoPan. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
Унаследовано от IBalloonManager. |
|
Окончание автоматического перемещения центра карты, вызванного методом autoPan. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
Унаследовано от IBalloonManager. |
|
Событие, предшествующее событию Balloon.userclose. Позволяет отменить пользовательское действие посредством вызова метода preventDefault. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
Унаследовано от IBalloonManager. |
|
Закрытие инфо-объекта. Названия полей доступны через метод Event.get:
Унаследовано от IPopupManager. |
|
Открытие инфо-объекта. Названия полей доступны через метод Event.get:
Унаследовано от IPopupManager. |
|
Закрытие балуна пользователем. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
Унаследовано от IBalloonManager. |
Методы
Имя |
Возвращает |
Описание |
autoPan() |
Перемещает карту таким образом, чтобы балун оказался видимым. Унаследован от IBalloonManager. |
|
Закрывает открытый балун. |
||
destroy() |
Отключает менеджер инфо-объекта. Унаследован от IPopupManager. |
|
getData() |
Object|null |
Возвращает хэш с описание объекта, на котором открыт балун или null, если балун не был открыт. |
IOptionManager|null |
Возвращает менеджер опций или null. Унаследован от IPopupManager. |
|
Возвращает объект-обещание вернуть оверлей. Унаследован от IPopupManager. |
||
IOverlay|null |
Возвращает оверлей, если тот существует. Унаследован от IPopupManager. |
|
Number[]|null |
Возвращает координаты инфо-объекта или Унаследован от IPopupManager. |
|
Boolean |
Метод, определяющий, открыт ли балун на объекте с переданным идентификатором. |
|
Открывает балун на объекте с переданным идентификатором. |
||
Задаёт новые данные для отображения балуна. |
||
Задаёт инфо-объекту новые опции. Унаследован от IPopupManager. |
||
Задаёт инфо-объекту новую позицию. Унаследован от IPopupManager. |
Описание методов
close
{vow.Promise} close([force])
Закрывает открытый балун.
Возвращает объект-promise.
Параметры:
Параметр |
Значение по умолчанию |
Описание |
false |
Тип: Boolean Мгновенное закрытие. |
Пример:
// Закроем все балуны на слое.
objectManager.objects.balloon.close();
objectManager.clusters.balloon.close();
getData
{Object|null} getData()
Возвращает хэш с описание объекта, на котором открыт балун или null, если балун не был открыт.
Пример:
var cluster = objectManager.clusters.balloon.getData();
if (cluster) {
alert('Сейчас открыт балун кластера с ' + cluster.properties.geoObjects.length + ' объектами.');;}
isOpen
{Boolean} isOpen(id)
Метод, определяющий, открыт ли балун на объекте с переданным идентификатором.
Возвращает состояние балуна: открыт/закрыт.
Параметры:
Параметр |
Значение по умолчанию |
Описание |
|
— |
Тип: Object Идентификатор объекта. |
* Обязательный параметр/опция.
Пример:
// При повторном клике на метку будем закрывать балун.
objectManager.objects.options.set('hideIconOnBalloonOpen', false);
objectManager.objects.events.add('click', function (e) {
var objectId = e.get('objectId');
if (objectManager.objects.balloon.isOpen(objectId)) {
objectManager.objects.balloon.close();
}
});
open
{vow.Promise} open(objectId, anchorPixelPosition)
Открывает балун на объекте с переданным идентификатором.
Возвращает объект-promise.
Параметры:
Параметр |
Значение по умолчанию |
Описание |
— |
Тип: Object Идентификатор объекта, на котором надо открыть балун. |
|
— |
Тип: |
* Обязательный параметр/опция.
Пример:
// Загрузка данных объекта перед открытием балуна.
// Отменим автоматическое открытие балуна по клику на объекте.
objectManager.options.set('geoObjectOpenBalloonOnClick', false);
objectManager.objects.events.add('click', function (e) {
var objectId = e.get('objectId');
// По клику на объекте вызовем подгрузку данных для объекта.
loadObjectData(objectId).then(function (data) {
// Как только данные будут готовы, зададим их объекту и откроем балун.
objectManager.objects.getById(objectId).properties = data;
objectManager.objects.balloon.open(objectId);
});
});
setData
{vow.Promise} setData(objectData)
Задаёт новые данные для отображения балуна.
Возвращает объект-promise.
Параметры:
Параметр |
Значение по умолчанию |
Описание |
— |
Тип: Object Хэш с описанием объекта, на котором открыт балун. Соответствует описанию объекта, который подается на вход ObjectManager.add. |
* Обязательный параметр/опция.
Пример:
// Подгрузка данных после открытия балуна на объекте.
objectManager.objects.events.add('balloonopen', function (e) {
var objectId = e.get('objectId'),
object = objectManager.objects.getById(objectId);
if (!object.properties) {
loadObjectData(objectId).then(function (data) {
if (objectManager.balloon.isOpen(objectid)) {
object.properties = data;
objectManager.objects.balloon.setData(object);
}
});
}
});
Обязательный параметр.