Клуб API Карт

Проблема с центрированием карты

Пост в архиве.

Где можно посмотреть рабочий пример ссылка

 

Проблема вот в чем: после загрузки карты, если поперемещать карту в разные стороны несколько раз, а затем кликнуть по метке, то балун откроется на ней, но карта отцентруется где-то не понять где. Достаточно просто увести карту подальше от меток, потом вернуть и кликнуть на какую-нибудь из них.

8 комментариев
Sergey Konstantinov
28 января 2016, 04:48
Карта и не должна центрироваться по меткам при клике - карта сдвигается так, чтобы было видно полностью балун.
Максим Горчаков
28 января 2016, 04:48

Согласен с вами, но в моем случае его почти не видно или не видно вовсе. Скорее всего вы не угадали подобное стечение обстоятельств как я писал.

После загрузки отодвинте карту так, чтобы все маркеры не были видны, затем верните карту обратно (важно не менять зум) и кликните на объекте в котором 1-10 объектов внтури. Балун открывается где нужно, но карта улетает в сторону и его становится не видно.

Балуны на карте для кластеров-домиков вы открываете самостоятельно, да еще и через запедаленное свойство _position. При использовании неинтерфейсных полей и методов мы не гарантируем стабильную работу кода.

 

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

clusterer.options.set('clusterBalloonContentBodyLayout', MyLayout);

В документации этой опции нет, скоро поправим.

Максим Горчаков
28 января 2016, 04:48

Если заменить "запедаленое свойство" на marker.geometry.getCoordinates() ситуацию это не исправит.

Мне кажется все же проще через простой балун и произвольное содержимое. А создание своих layout не радует. Уж больно как-то они странны. Вы бы сделали возможность просто добавлять в балун свое html содержимое. А то эти все создания шаблонов путают. Я не вижу в них смысла, если можно запихнуть то, что нужно в определенное место напрямую.

Если будете добавлять что-то новое в документацию, пожалуйста, по возможности, добавляйте побольше примеров ;)

Попробую переопределить балун кластера. Я правильно понимаю, что нужно копать около templateLayoutFactory?

Лейауты прекрасны ;) С ними надо разок подружиться и все станет хорошо. Советую почитать примеры здесь http://api.yandex.ru/maps/doc/jsapi/2.x/ref/reference/templateLayoutFactory.xml.

Я настойчиво рекомендую сделать свой макет, это во всех смыслах правильнее.

 

С балуном баг, причем какой-то фантастический. Будем разбираться.

 

 

Максим Горчаков
28 января 2016, 04:48

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

 пример

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

Максим Горчаков
28 января 2016, 04:48

Я вас понял. Попробовал исключить ошибки из-за использования не страндартного балуна кластера. Спасибо за вашу работу ;) Ждем обновления