Клуб API Карт

Открытие balloon и zoom

sven-tex
10 июля, 10:18

Необходимо следующее поведение: 

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

Пытался сначала получить координаты 

var currentClickCoord = '';

objectManager.objects.events.add('click', function (e) {

    currentClickCoord = e.get('coords');
});

И при открытии балуна делать зум в точку

objectManager.objects.balloon.events.add('open', function (e) {
    var target = e.get('target');

    myMap.setCenter(currentClickCoord, 15);
});

Вся проблема с autoPan у balloon,  пробовал и autopanend и open, после зум не попадает в нужную точку.

Так же пробовал делать зум в центр карты уже после открытия балуна, но т.к. autoPan открывается не по центру, зум просходил мимо. Как лучше решить такую задачу?

2 комментария
Подписаться на комментарии к посту
var objectManager = new ymaps.ObjectManager({
  geoObjectOpenBalloonOnClick: false
});



myMap.geoObjects.add(objectManager);



objectManager.objects.events.add('click', function (e) {
  var objectId = e.get('objectId');
  var geoObject = objectManager.objects.getById(objectId);
  myMap.setCenter(geoObject.geometry.coordinates, 15)
    .then(function () {
      objectManager.objects.balloon.open(objectId);
    });
});


https://jsfiddle.net/treofury/
Обновлено 10 июля, 10:38
dimik,
Спасибо, отмена стандартного geoObjectOpenBalloonOnClick: false помогла.