mrdubz
@mrdubz
front end developer

Как получить id маркера?

На карте есть несколько маркеров, у каждого маркера есть свойство ID
Выводится все примерно так
var shops = [
	{
		id: 12345,
		city: 42, 
		coordinates: [55.74,37.61],
		name: 'Название объекта', 
		desc: 'Адрес объекта в текстовом виде'
	},
	{
		id: 54321,
		city: 42, 
		coordinates: [55.47,37.16],
		name: 'Название объекта', 
		desc: 'Адрес объекта в текстовом виде'
	}
]

$.each(shops, function (index, value) {
    if (value.city == city) {
        points.push(new ymaps.Placemark(value.coordinates, {
            balloonHeader: value.name, 
            balloonContent: "<div class='my_ballon'><h2>" + value.name + "</h2><p>" + value.desc + '</p></div>'
        }, {  
            preset: "twirl#blueStretchyIcon",
            balloonShadow: false, 
            balloonPanelMaxMapArea: 0,
        //    iconColor: '#',
        })); 
       //Тут добавим айдишник и дату с айдишником неким элементам, при взаимодействии с которыми должно быть взаимодействие с  нужным маркером
        $('#art_' + value.id).attr('data-num', value.id);
    }
});

$.each(points, function (index, value) {
    myMap.geoObjects.add(value);
});


Как провести манипуляцию с определенным маркером зная его ID, например, поменять цвет маркера?
  • Вопрос задан
  • 331 просмотр
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Запоминать не в массив, а в объект, то есть
var points = {};
...
points[value.id] = new ymaps.Placemark(...);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы