Клуб API Карт

Как по клику на метке получить её географические координаты

Jaguar-X-Type
23 марта 2015, 13:06

  Как обработать клик по метке, а внутри обработчика получить географические координаты метки на которую кликнули. 

 myPlacemark = new ymaps.Placemark([12,10], {
hintContent: 'Собственный значок метки'
}, {
    iconLayout: 'default#image',
    iconImageHref: '/image/fl.png',
    iconImageSize: [22, 40],
    iconImageOffset: [-11, -40]
  }),

 

9 комментариев
Подписаться на комментарии к посту

myPlacemark.events.add('click', function (e) {

    console.log(e.get('target').geometry.getCoordinates());

});

При количестве меток > 1 лучше использовать делегирование событий

 

 

 

Меток 2 и у каждой своё название

1-я myPlacemark

2-я myPlacemarkS

 

И как координаты метки присвоить переменной:

coord

 

 

Как написать для каждой метки свой обработчик? 

 

 

 

 

 

 

 

dimik, ну зачем умничать, я просил показать пример обработки события в котором координата метки присваивается переменной той метки по кторой кликнули. Всё что мне нужно внутри функции обработки я напишу сам, меня этому учить не надо. Покажите только как в обработчике присвоить переменной значаение координа метки. Всё. Больше мне ничего не надо.

Дело не в умничать.

Если вы не знаете как присваивать значение переменной, вы не напишите ничего.

Я не учитель и учить не умею, я лишь дал вам ссылку на ресурс, где вы сами можете научиться, если хотите конечно...

 

На первой странице документации:

 

рассчитано на разработчиков, знакомых с программированием на JavaScript и объектно-ориентированной парадигмой разработки

 

 

Я знаю как, скажите что присвоит ей значение координат метки на которую нажали и их 2.

Код вывода координат метки в консоль написан в моем первом комментарии

При инициализации карты я отключил встроенный по умолчанию  ZOOM по двойному клику

        myMap.behaviors.disable("dblClickZoom");

Отключился.

 

Не повлия ло ли это на следующее:

 

Перемещения карты на нужную точку при клике на метку myPlacemarkS, почему-то не происходит.

 

myPlacemarkS.events.add('click', function (e) {

   myCoords = e.get('target');

   myMap.panTo([55.753,37.609], {flying: true});

 });

 

Вроде бы всё правильно. 

Почему не работает?

создайте новый пост с вашим вопросом.