Клуб API Карт

Clusterer, некорректная работа при близких координатах.

ifourspb
23 мая 2012, 12:56
Добавляю в clusterer массив Placemark.
В случае очень близких координат  (в коде сделал с одной координатой для упрощения) - при клике на маркер-агрегатор появляется балун с заданным balloonContent, в примере ниже - три звездочки (и то как-то покороженно), и никаким усилиями я не могу пробраться к событию click для такого агрегатора. Для конечного маркера - без проблем работает, а для агрегатора - ничего не проходит.

Очень нужна помощь, чую багу)

Упрощенный код:

Инит:
mk = new Array(
mk = new Array();m(0, 0, "30.322893","59.960426");

myMap = new ymaps.Map("ymap", {
        center: [55.76, 37.64],
        zoom: 10
    }
myMap.controls.add("zoomControl");
myMap.container.fitToViewport(
cluster = new ymaps.Clusterer(

Затем ajax подгружается такой код:
m(1, 1, "30.322893","59.960426");
m(2, 2, "30.322893","59.960426");
.......
m(21, 21, "30.322893","59.960426");


Функция m(

function m(k, idq, lat, lng){
    mk[k] = new ymaps.Placemark([lat, lng], {
                    // Контент балуна
                    balloonContent: '
***
',
            id: idq
                }
    mk[k].events.add("balloonopen",
        function(e) {
            load_balloon(k, mk[k].properties.get('id')
           
}

function load_balloon(k, id){
    mk[k].properties.set("balloonContent", "Загрузка...");
    var str = 'do=load_balloon&id='+id+'&num='+k;
    $.ajax({
       type: "POST",
       url: "/ajax/form.php",
       data: str,
       success: function(msg){
        $("#ajax_res").html(msg);
       }
    }
}
1 комментарий
Подписаться на комментарии к посту

Может я невнимательно прочитала - где у вас добавление меток в кластеризатор?

Еще - вы в коде слушаете событие открытие балуна на плейсмарке. Если плейсмарк попадает в кластер, то откроется балун кластера, а не плейсмарка.