Возможно увеличить масштаб карты, когда она отображает раскрывшиеся метки кластера?
Иногда при нажатии на метку кластера карта отображает его метки прямо на границе окна (пример ниже). Подскажите, возможно ли как-то отследить подобную ситуацию, чтобы уменьшить масштаб на единицу? Или, хотя бы, в любом случае уменьшить масштаб карты на единицу после отображения меток кластера?
Ответы (1 шт):
Включите кластеризатору учёт отступов useMapMargin, и задайте удобные вам отступы через заданных map.margin.Manager или сразу при настройке карты.
var myMap = new ymaps.Map('map', {
center: [55.751574, 37.573856],
margin: [50,50,50,50],
zoom: 9
}),
clusterer = new ymaps.Clusterer({
useMapMargin: true
})
Для менеджера объектов всё делается аналогично.
var objectManager = new ymaps.ObjectManager({
clusterize: true,
useMapMargin: true
});
...или: objectManager.options.set({useMapMargin: true});
Но вообще useMapMargin по-умолчанию включен, специально включать его не требуется.
Пример на эту тему в песочнице Яндекса есть.