Клуб API Карт

февраль 2016
Список карт в конструкторе показывает только 10 карт?
mehmeh06
2 февраля 2016, 16:12

Список карт в конструкторе показывает только 10 последних карт и в конструкторе, и в "Моих картах". Карт у меня более 100. Автоподгрузки, как раньше, не происходит. Браузер Chrome 48.0.2564.97 m. Предлагаете вместо редактирования каждый раз новую рисовать?

Кстати, раньше (последний раз редактировал в декабре) косяки с автоподгрузкой карт имели место быть только в "Моих картах", причем подгружалось строго опредленное количество. Но если удалить хотя бы 1 карту, то автоподгрузка начинала загружать еще и еще.

2 комментария
Прошу помощи с setBounds - показывает на максимальном отдалении карты (с серыми полями)
biohazard-87
2 февраля 2016, 16:12

Не давно начал изучать ya.maps и потребовалось динамически масштабировать карту в зависимости от удаленности объектов друг от друга - чтобы всегда на карте отображалить все объекты (были видны пользователю).

Использую следующий код:

        ymaps.ready(markicons);
        var oMap;
        function init() {
            var cData = data.MapCenter;
            var CenterPoint = [cData[0].longi, cData[0].lati]
            var ZoomV = data.ZoomValue; //попытка установить расчетное значение зума
            oMap = new ymaps.Map("map", {
                center: CenterPoint,
                zoom: ZoomV, //расчетное значение равно 8
                controls: ["typeSelector", "zoomControl"]
            });
        }
        function markicons() {
            init();
            var markers = [];
            var aData = data.poi;
            for (var i = 0, poiData; poiData = aData[i]; i++) {
                var marker =
                    new ymaps.GeoObject({
                        geometry: {
                            type: "Point",
                            coordinates: [poiData.longi, poiData.lati]
                        },
                        properties: {
                            iconContent: '',
                            hintContent: '<b>' + poiData.Info + '</b>',
                            id: poiData.id,
                            projectId: data.projectId,
                            anketaId: data.anketaId
                        }
                    },
                {
                    preset: 'islands#darkOrangeIcon',
                    draggable: false
                });
                oMap.geoObjects.add(marker);
            }
            oMap.setBounds(oMap.geoObjects.getBounds(), { checkZoomRange: true });
        }

По итогу, если выключить

oMap.setBounds(oMap.geoObjects.getBounds(), { checkZoomRange: true });

то отображается правильно, но расчетное значение зума не то, что нужно (пока не очень понял как пересчитать зум правильно и стоит ли это делать самому, или же лучше использовать готовое решение)

Если же включить - то вот такая картинка:

Что делаю не так?

1 комментарий
setBounds
Инициализация карты по умолчанию
webolution
2 февраля 2016, 17:38

Добрый день у меня два вопроса

  1. Как убрать центр карты по умолчанию? У меня две страницы. на одной человек вводит адрес, происходит редирект на другую, на ней карта с центром Москва + геокодер определяет что ввел пользователь и перенаправляет карту туда. происходит "рывок". как это избежать? 
  2. Есть карта и список результатов рядом (они расчитываются в зависимости от координат видимой части карты var bounds = myMap.getBounds();) , проблема в том что если div с картой скрыть, объекты пропадают в списке результатов. как сделать чтобы все работало? как то по слоям? css ? z index?

спасибо

5 комментариев
Балун-панель при использовании метода LoadingObjectManager
Тим В
2 февраля 2016, 21:46

Добрый день, товарищи.

Подскажите как при использовании LoadingObjectManager задать балун в виде панели.

Если можно пример.

  * глупых вопросов не бывает

1 комментарий
балун-панель
Пользовательский полигон ниже балунов
Yury.Radchenko2013
3 февраля 2016, 10:51

Использую Yandex Map Kit for iOS. На карту накладывают полигон (через Layer), но он получается поверх всего что есть на карте, в том числе поверх балунов (annotation).

Вопрос: как вставить layer или subview в карту, чтобы балуны были поверх всего остального? Чтобы они были поверх кастомно добавленного на карту полигона.

1 комментарий
iOS
Проблема "Для этого участка местности нет данных"
rassola
3 февраля 2016, 16:53

Здравствуйте. Столкнулся сегодня с данной проблемой. 

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

Центр и зум карты у меня расчитывается следующим образом:

map.setBounds(map.geoObjects.getBounds());

Как обойти данное сообщение на карте. К примеру каким нибудь словием проверяить если ли для данной местности данные и если нету уменьшить карту?

3 комментария
Динамический балун
Stadnikovp73
5 февраля 2016, 10:18

Добрый день. 

Понимаю что уже полно постов на эту тему, но что то все старые и вскорее всего, что уже изменилось API. 

Вывожу на карту большое количество точек. При большом масштабе карты они собираются в кластер. По клику на кластер или метку нужно отправить ajax с id метки или массив id меток входящих в кластер, чтобы получть инфу по этим объектам и создать балун с ней. 

Какое событие нужно слушать и как получить список ID?

1 комментарий
балун,метка,кластер,событие,AJAX
Изменился ответ геокодера
Удалённый пользователь
5 февраля 2016, 12:13

Набдаю странную ситуацию, о которой ничего нет в вашей документации. Использую метод http://geocode-maps.yandex.ru/1.x для определения адреса по координатам. Ответ например для города Владимир похож на тот, что в документации

{
  "response": {
    "GeoObjectCollection": {
      "metaDataProperty": {
        "GeocoderResponseMetaData": {
          "request": "40.4162,56.1345",
          "found": "96",
          "results": "1",
          "boundedBy": {
            "Envelope": {
              "lowerCorner": "40.413704 56.132002",
              "upperCorner": "40.418699 56.136999"
            }
          },
          "Point": {
            "pos": "40.416200 56.134500"
          },
          "kind": "house"
        }
      },
      "featureMember": [
        {
          "GeoObject": {
            "metaDataProperty": {
              "GeocoderMetaData": {
                "kind": "house",
                "text": "Россия, Владимир, улица Чехова, 10",
                "precision": "exact",
                "AddressDetails": {
                  "Country": {
                    "AddressLine": "Владимир, улица Чехова, 10",
                    "CountryNameCode": "RU",
                    "CountryName": "Россия",
                    "AdministrativeArea": {
                      "AdministrativeAreaName": "Владимирская область",
                      "SubAdministrativeArea": {
                        "SubAdministrativeAreaName": "городской округ Владимир",
                        "Locality": {
                          "LocalityName": "Владимир",
                          "Thoroughfare": {
                            "ThoroughfareName": "улица Чехова",
                            "Premise": {
                              "PremiseNumber": "10"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            },
            "description": "Владимир, Россия",
            "name": "улица Чехова, 10",
            "boundedBy": {
              "Envelope": {
                "lowerCorner": "40.407623 56.129745",
                "upperCorner": "40.42408 56.138935"
              }
            },
            "Point": {
              "pos": "40.415851 56.13434"
            }
          }
        }
      ]
    }
  }
}

Но вот для Москвы почему то в ответе отсутствует ключ SubAdministrativeArea и Locality вкладывается прямо в AdministrativeArea. Вот как это выглядит

{
  "response": {
    "GeoObjectCollection": {
      "metaDataProperty": {
        "GeocoderResponseMetaData": {
          "request": "37.6071,55.7645",
          "found": "89",
          "results": "1",
          "boundedBy": {
            "Envelope": {
              "lowerCorner": "37.604601 55.762004",
              "upperCorner": "37.609595 55.766997"
            }
          },
          "Point": {
            "pos": "37.607100 55.764500"
          },
          "kind": "house"
        }
      },
      "featureMember": [
        {
          "GeoObject": {
            "metaDataProperty": {
              "GeocoderMetaData": {
                "kind": "house",
                "text": "Россия, Москва, Тверская улица, 16с1",
                "precision": "exact",
                "AddressDetails": {
                  "Country": {
                    "AddressLine": "Москва, Тверская улица, 16с1",
                    "CountryNameCode": "RU",
                    "CountryName": "Россия",
                    "AdministrativeArea": {
                      "AdministrativeAreaName": "Москва",
                      "Locality": {
                        "LocalityName": "Москва",
                        "Thoroughfare": {
                          "ThoroughfareName": "Тверская улица",
                          "Premise": {
                            "PremiseNumber": "16с1"
                          }
                        }
                      }
                    }
                  }
                }
              }
            },
            "description": "Москва, Россия",
            "name": "Тверская улица, 16с1",
            "boundedBy": {
              "Envelope": {
                "lowerCorner": "37.598762 55.760023",
                "upperCorner": "37.615219 55.769302"
              }
            },
            "Point": {
              "pos": "37.60699 55.764663"
            }
          }
        }
      ]
    }
  }
}

Вот ваша документация по ответу метода https://tech.yandex.ru/maps/doc/geocoder/desc/concepts/response_structure-docpage/ 

В ней есть пример именно для Москвы, и в этом примере все по-нормальному, а не так как отвечает метод сейчас. Я использовал этот API в мобильном приложении, и теперь у всех его пользователей в Москве не работает определение адреса. Прокомментируйте пожалуйста ситуацию, может быть я что-то упустил?

8 комментариев
геокодер
Параметры suggest для поиска организаций
n.karmilin
5 февраля 2016, 19:38

Есть ли возможность поиска через suggest или suggestView не только географических объектов, но и организаций? Я сравнил два сгенерированных запроса(с сайта https://maps.yandex.ru и своего), они различаются параметром search_type. На яндекс.картах он установлен в "all", у меня - "tp". Я пытался найти информацию об поле options для suggest, но там только options.boundedBy, options.provider, options.results. Если параметр search_type можно установить через поле options, подскажите, как это сделать.

2 комментария
Тень вокруг полигона
Rusherz
7 февраля 2016, 16:48

Здравствуйте. Возможно ли обвести полигон внешней тенью как на картинке в 2.0 версии?

3 комментария
При клике на метку изменить стиль у внешнего элемента добавленного через append
zherelevich
8 февраля 2016, 22:19

Здравствуйте! Помогите пожалуйста.

Есть цикл который:
1 добавляет на стр. через append блок с информацией о магазине
2 создет метки 
3  добавляю для метки event click который должен созданый выше блок раскрывать, но ничего не происходит. Как сделать чтобы созданный блок был виден в event click может есть какой-то аналог типа live click jquery?

Фрагмент кода

for (var i = 0; i < data.length; i++) {
                        html = '';
                        html += '<div  id="store'+i+'" data-id="' + i + '" class="item store-link">';
                        html +=  '<div class="title clearFix"><span>'+data[i].name+'</span>';
                        if (data[i].wait)
                        html+='<span class="willBeAvailable">Через '+data[i].moving+' дня</span>';
                        else
                            html+='<span class="available">В наличии</span>';
                        html += '</div>';
                        html += '<div class="address">' + data[i].address;
                        html += '<span>' + data[i].address2+'</span>';
                        html += '</div>';
                        html += '<div class="holder"><div class="arrow"><div></div></div>';
                        html += '<a class="telHome" href="tel:' + data[i].tel1 + '">' + data[i].tel1 + '</a>';
                        html += '<a class="telHome" href="te2:' + data[i].tel2 + '">' + data[i].tel2 + '</a>';
                        html += '<div class="times">';
                        $.each(data[i].worktime, function(index, value){
                            html += '<div class="time clearFix">'+value+'</div>';
                        });

                        html += '</div>';
                        html += '<div class="hr"></div>';
                        html += '<div class="howToGet">';
                        html += '<input type="hidden" name="boundedBy" value="'+ data[i].boundedBy +'" >';
                        html += '</div>';
                        html += '</div>';
                        html += '</div>';
                        $('.contactsHolder').append(html);

                        if (data[i].wait)
                            place = '/catalog/view/theme/default/image/map/place2.png';
                        else
                            place = '/catalog/view/theme/default/image/map/place.png';
                        myGeoObjects[i] = new ymaps.Placemark([data[i].m_lat, data[i].m_lan], {
                            name: data[i].name,
                            address: data[i].address,
                            worktime: '',
                            description: data[i].description,
                            clusterCaption:data[i].name,
                            balloonContentBody:data[i].address


                        }, {
                            balloonContentLayout: BalloonContentLayout,
                            preset: 'islands#icon',
                            iconColor: '#0095b6',
                            iconLayout: 'default#image',
                            iconImageHref: place,
                            iconImageSize: [81, 68],
                            iconImageOffset: [-3, -42]
                        });
                        myGeoObjects[i].events.add('click', function () {
                            //этот контейнер только что создан и не виден событию
                            $('#store'+i).show();
                        });
                    }

1 комментарий
Каким способом лучше реализовать фиксированную метку (placemark) по середине карты?
xsh
9 февраля 2016, 00:10

Т.е. при смещении карты, метка остается в центре карты всегда.  Так сделано в мобильном приложении Яндекс.Такси.

Спасибо.

3 комментария
objectManager getBounds() - взлетает ли сегодня?
sweelemk
9 февраля 2016, 08:46
<div class='tbody'><a href="" class='tr coord' data-long='55.606878' data-lat='37.524767'>
										<div class='td names'>Сервис КЭМП Ясенево</div>
										<div class='td coord__address'>Москва, ул. Вильнюсская 1</div>
										<div class='td coord__phones'><span>(495)422-29-92</span></div>
										<div class='td coord__schedule'><span>с 9:00 до 22:00</span><span>Ежедневно</span></div>
									</a>
									<a href='' class='tr coord' data-long='55.372774' data-lat='37.783078'>
										<div class='td names'>Сервис КЭМП Домодедово</div>
										<div class='td coord__address'>Московская область, <br>г. Домодедово, <br>мкр-н Востряково, <br>ул. Заборье, д.1Д <br>(46-й км Каширского шоссе)</div>
										<div class='td coord__phones'><span>(49679)66-700,</span><span>(49679)66-491,</span><span>(495)926-3208</span></div>
										<div class='td coord__schedule coord__schedule'><span>с 8:00 до 21:00</span><span>Ежедневно</span></div>
									</a>
									<a href='' class='tr coord' data-long='54.920635' data-lat='37.404222'>
										<div class='td names'>Сервис КЭМП Серпухов</div>
										<div class='td coord__address'>142211, Московская область, г.Серпухов, <br>ул. Урицкого, д. 1.</div>
										<div class='td coord__phones'><span>(495)556-65-76,</span><span>(495)556-63-34,</span><span>495)926-32-08</span></div>
										<div class='td coord__schedule'><span>с 9:00 до 21:00</span><span>Ежедневно</span></div>
									</a>
									<a href='' class='tr coord' data-long='55.599591' data-lat='38.098045'>
										<div class='td names'>Сервис КЭМП Жуковский</div>
										<div class='td coord__address'>Московская область, город Жуковский, ул. Мясищева, д.&nbsp;16а</div>
										<div class='td coord__phones'><span>(495)422-29-92</span></div>
										<div class='td coord__schedule'><span>с 9:00 до 21:00</span><span>Ежедневно</span></div>
									</a>
								</div>

Доброго дня!

Пытаюсь центрировать метки на карте и никак не получается. Все координаты подтягиваю из верски, т.е. банально из атрибутов и разношу метки. Вопрос стал ребром, когда необходимо по координатам меток все же центрировать карту. Пытался использовать getBound(), но не вышло.

Выше код, откуда беру координаты

function init () {
		var myMap = new ymaps.Map('map', {
				center: [55.3172, 37.523285],
				zoom: 9,
				controls: []
			}, {
				searchControlProvider: 'yandex#search'
			}),
			objectManager = new ymaps.ObjectManager({
				clusterize: true
			}),currentId = 0;

			MyBalloonLayout = ymaps.templateLayoutFactory.createClass(
				'<div class="popover top">' +
					'<a class="close" href="#">&times;</a>' +
					'<div class="arrow"></div>' +
					'<div class="balloon">' +
						'$[[options.contentLayout observeSize minWidth=246 maxWidth=246]]' +
					'</div>' +
				'</div>', {
				build: function () {
					this.constructor.superclass.build.call(this);
					this._$element = $('.popover', this.getParentElement());
					this.applyElementOffset();
					this._$element.find('.close')
					    .on('click', $.proxy(this.onCloseClick, this));
				},
				clear: function () {
				    this._$element.find('.close')
				        .off('click');
				    this.constructor.superclass.clear.call(this);
				},
				onSublayoutSizeChange: function () {
					MyBalloonLayout.superclass.onSublayoutSizeChange.apply(this, arguments);
					if(!this._isElement(this._$element)) {
					    return;
					}
					this.applyElementOffset();
					this.events.fire('shapechange');
				},
				applyElementOffset: function () {
					this._$element.css({
						left: -((this._$element[0].offsetWidth + 18) / 2),
						top: -(this._$element[0].offsetHeight + this._$element.find('.arrow')[0].offsetHeight + 10)
					});
				},
				onCloseClick: function (e) {
					e.preventDefault();
					this.events.fire('userclose');
					objectManager.objects.options.set({
					    iconLayout: 'default#image',
						iconImageHref: 'prod/img/marker.png'
					});
				},
				getShape: function () {
					if(!this._isElement(this._$element)) {
					    return MyBalloonLayout.superclass.getShape.call(this);
					}
					var position = this._$element.position();
					return new ymaps.shape.Rectangle(new ymaps.geometry.pixel.Rectangle([
						[position.left, position.top], [
							position.left + this._$element[0].offsetWidth,
							position.top + this._$element[0].offsetHeight + this._$element.find('.arrow')[0].offsetHeight
						]
					]));
				},
				_isElement: function (element) {
					return element && element[0] && element.find('.arrow')[0];
				}
			}),

			MyBalloonContentLayout = ymaps.templateLayoutFactory.createClass(
				'<h3 class="balloon__title">$[properties.balloonHeader]</h3>' +
				'<div class="balloon__content">$[properties.balloonContent]</div>'
			);

			objectManager.objects.options.set({
			    iconLayout: 'default#image',
				iconImageHref: 'prod/img/marker.png',
				iconImageSize: [20, 27],
				balloonShadow: false,
				balloonLayout: MyBalloonLayout,
				balloonContentLayout: MyBalloonContentLayout,
				balloonPanelMaxMapArea: 0
			});
			function onObjectEvent (e) {
				var objectId = e.get('objectId');
				if (e.get('type') == 'mouseenter') {
				    objectManager.objects.setObjectOptions(objectId, {
				        iconLayout: 'default#image',
						iconImageHref: 'prod/img/pin.png'
				    });
				}
				if (e.get('type') == 'mouseleave') {
				    objectManager.objects.setObjectOptions(objectId, {
				    	iconLayout: 'default#image',
				    	iconImageHref: 'prod/img/marker.png'
				    });
				}
				if (e.get('type') == 'click') {
					    objectManager.objects.setObjectOptions(objectId, {
				    	iconLayout: 'default#image',
				    	iconImageHref: 'prod/img/marker.png'
				    });
				}
			}
			objectManager.objects.events.add(['mouseenter', 'mouseleave', 'click'], onObjectEvent);

		zoomControl = new ymaps.control.ZoomControl({
			options: {
				position: {
					top: 28,
					left: 17
				}
			}
		});

		myMap.controls.add(zoomControl);

		var myObjects = [],
			location = [];

			$('.coord').each(function(index){
				var cur_coords = [];
				cur_coords[0] = $(this).data('long');
				cur_coords[1] = $(this).data('lat');
				cur_coords[2] = $(this).find('.names').text();
				cur_coords[3] = $(this).find('.coord__address').text();
				cur_coords[4] = $(this).find('.coord__phones').html() || '';
				cur_coords[5] = $(this).find('.coord__schedule').html();
				location[index] = cur_coords;

			});
			var coordinates = location;


			for (var i = 0, l = coordinates.length; i < l; i++) {
				var coord = coordinates[i];
				console.log(coord[3])
			    myObjects.push({
			        type: "Feature",
			        id: currentId++,
			        geometry: {
			            type: 'Point',
			            coordinates: [coord[0],coord[1]]
			        },
			        properties: {
						balloonHeader: coord[2],
						balloonContent: "<div class='balloon__address'>" + coord[3] + "</div><div class='balloon__row'>" + "<div class='balloon__col'>" + coord[4] + "</div>" + "<div class='balloon__col'>" + coord[5] +	"</div>" + "</div>"
						 ,
						// "clusterCaption": "Еще одна метка"
					}
			    });
			}

			objectManager.add(myObjects);
			myMap.geoObjects.add(objectManager);
			objectManager.getBounds()
	};

Подскажите, что не верно?

7 комментариев
Отловить загрузку кластеров в RemoteObjectManager
tatink-t-s-r
9 февраля 2016, 21:27

Добрый день!

Делаю загрузку кластеров на карте через RemoteObjectManager. При этом после первоначальной загрузки хотелось отзумить карту в соответствии с полученными кластерами. Как отловить момент загрузки кластеров? Я так понял события onload у него нету

1 комментарий
RemoteObjectManager
Вопрос к разработчикам: boundschange и sizechange
Иван
10 февраля 2016, 10:22

Обнаружил интересную особенность работы boundschange. Это событие отслеживает изменение области просмотра карты. В документации написано «в результате изменения центра или уровня масштабирования». Но в случае изменения размера окна карты тоже срабатывает событие boundschange, так как при изменении размера окна карты область просмотра карты тоже меняется (проверено).

Есть также событие sizechange, которое отслеживает только изменения размера окна карты. Там доступны поля oldSize и newSize.

Но если мне нужно отследить только изменение масштаба и перетаскивание карты? Я бы мог слушать boundschange и проверять, меняется ли размер окна, но в boundschange не доступны поля oldSize и newSize.

На мой взгляд, с этим нужно что-то делать.

6 комментариев
boundschange,sizechange,область видимости,events
Прблема с добавлением событий меткам, загруженным из json через objectManager
Алексей Борисов
10 февраля 2016, 11:12

Добрый день.

Цель: повесить событие на метки, загруженные из json.

Гружу копипастом из песочницы

$.ajax({
	url: "data.json"
}).done(function(data) {
	objectManager.add(data);
	objectManager.objects.events.add('mouseenter', function (e) {
		var objectId = e.get('objectId');
		alert(objectId);
	});
});

Метки загружаются, на карте отображаются, но событие не привязывается. При этом, если в месте атача отладить по objectManager.object.getAll/each - видно, что все точки(объекты) загружены.

Если я добавляю точку в OM "вручную" (до загрузки основной массы точек из json)

objectManager.add({
			type: 'Feature',
			id: 999,
			geometry: {
				type: 'Point',
				coordinates: [56.23, 34.79]
			}
		});

То, событие присваивается только "ручной" точке, остальные - "мертвые".

Что я делаю не так?)

UPD: связано это с кластеризацией. Если через json загружать метку на отдельных координатах, то событие по ней срабатывают, события по кластеру нет...

UPD: потому-что к кластером обращаться нужно через objectManager.clusters.events

Нет комментариев
Перемещение области видимости карты к открывшемуся балуну и зумирование при использованиии objectManager
lunaAdvertising
10 февраля 2016, 11:45

Всем добра. Вот сразу ссылочка: http://198.199.124.81/map/

JS: http://198.199.124.81/map/map_app.js

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

У меня идет динамическая подгрузка балуна, подгружается для каждой метки единожды, но если я добавляю setCenter и setZoom к карте по загрузке и открытию балуна, работать адекватно карта не хочет, может кинуть меня в Северо-ледовитый океан или не отобразить балун.

Как я понимаю, это из-за того, что на момент клика маркера еще нет на карте в виду того, что работает через ObjectManager.

Надо чтобы при клике на запись в списке происходил зум, перемещение зоны видимости к маркеру(маркер вставал по центру) и открытие балуна.

Более детально по всем вопросам могу ответить в дальейшем обсуждении ниже.

13 комментариев
Как показывать только часть объектов по типу cian.ru?
Геннадий
10 февраля 2016, 12:58

Подскажите пожалуйста как реализовать подобную "фишку", а то карта грузится очень долго...

6 комментариев
как открыть балун кластера при наведении
zashkvarov12331212121212
10 февраля 2016, 17:33
 clusterer.events
        // Можно слушать сразу несколько событий, указывая их имена в массиве.
        .add(['mouseenter', 'mouseleave'], function (e) {
            var target = e.get('target'),
                type = e.get('type');
            if (typeof target.getGeoObjects != 'undefined') {
                // Событие произошло на кластере.
                if (type == 'mouseenter') {
                    target.baloon.open()
                    a=target.baloon.open()
                    console.log(a)
                } else {
                  target.baloon.close()
                }
            } 

как открыть балун кластера при наведении?в консоле пишет Cannot read property 'open' of undefined как правильно написать чтобы сработало?

5 комментариев
Скрыть пустые табы из балуна кластера
Алексей Борисов
10 февраля 2016, 18:26

На карте располагаются метки, кластеризуются. Некоторые метки имеют описание, другие - нет. Необходимо при кластеризации в Layout выводить только те метки, для которых, скажем properties.isDisplay = true или properties.paloonContent не пустой (к примеру, в принципе генерировать поля могу как угодно).

В остальном хочется использовать layout - cluster#balloonCarousel.

Собственно вопросы:

1) Нет ли в api настройки, скрывающей отображение балуна при кластеризации для меток без контента? (что-то типа options.openEmptyHint )

2) Можно ли выцепить исходник шаблона cluster#balloonCarousel? фактически в него нужно дописать всего одно условие, в остальном он идеален)

1 комментарий