Клуб API Карт

Глюки с отображением меток на карте

Sanspb2006
18 июня 2014, 18:39

Когда меток на карте становится много, начинаются странные глюки.

  • При максимальном увеличении масштаба метка пропадает, от неё остается лишь тень (началось, когда перешел на версию API 2.1)
  • Некоторые метки начинают отображаться, как кластер, в котором 2 одинаковые метки. Если на него нажать, то метка вообще исчезает...

Это всё происходит и в Chromium и в Firefox...

  

 Посмотреть пример (проспект Науки 23)

Вместо 2, должна быть метка в виде картинки:

 Возможно я неправильно делаю, что подгружаю в один и тот же кластер метки из разных файлов ?

Вот метка исчезает:

 

Прошу помочь. Спасибо!

7 комментариев

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

Мы поправим это в будущем релизе. 

У вас все заработает, если вы будете добавлять кластеризатор на карту 1 раз, а не при каждой загрузке.

Комментарий удалён

Смотрите, у вас есть один общий кластеризатор.

В него вы добавляете порциями объекты. А сам кластеризатор надо добавить на карту.

Вот объекты порциями добавляйте как добавляли.

А сам кластеризатор можно добавить на карту предварительно один раз и потом его не трогать.

 

//Добавляем метки на карту и запихиваем их в кластер

             ymaps.geoXml.load('http://doroga.spbauto.org/create_added_map.php?v=' + (new Date())).then(function (res) {

                      res.geoObjects.each(function (geoObject) {

                        result.push(geoObject);

                      });          

              spbauto_cluster.add(result);

// Вот эту строчку вынесите куда-нибудь наверх, чтобы она выполнялась один раз              

// spbauto_map.geoObjects.add(spbauto_cluster);

 

        });

      

 

Спасибо большое, пока Вы отвечали, я понял, как сильно я ступил :)

Уже поправил, спасибо!!!

Ничего страшного, пожалуйста)

p.s. Хотел еще спросить, а в версии API 2.1 кластеризатор научился работать с разными коллекциями объектов?

А то у меня целая проблема сделать так, чтобы на карте можно было отображать по нажатию на меню только нужную часть кластеризатора? Помню, была где-то тема...

Спасибо!

Нет, к сожалению, не научился по ряду архитектурных причин.

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

Ясно, спасибо, буду пробовать! :)