Клуб API Карт

Как отследить выбор метки в кластере?

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

Здравствуйте!

При клике на несколько меток, сгруппированых кластером, открывается балун со списком меток (слева) и балуном выбраной в этом списке метки (справа). Подскажите, какое событие нужно отловить чтобы динамически подгружать содержимое балуна, выбраное в этом списке?

Следующий метод работает только для загрузки отдельной метки:

myClusterer.events.add('balloonopen', function(e) { e.get('target').properties.set('balloonContent', "загрузка данных..."); });

2 комментария

Вариант 1 - грузить данные для всех меток в составе кластера.

Вариант 2 - при открытии балуна слушать событие change на поле cluster.state и проверять, не сменилось ли значение поля activeObject

myClusterre.events.add('balloonopen', function (e) {

    var target = e.get('target');

    if (target.getGeoObjects) {

       var activeObject = target.state.get('activeObject');

       loadData(activeObject);
       target.state.events.add('change', function () {

           var newActiveObject = target.state.get('activeObject');

           if (activeObject != newActiveObject) {

               activeObject = newActiveObject;

               loadData(activeObject);

           }

       });

    } 

});

 

типа того

Спасибо!

Вариант 2 работает, очень помогли.