Клуб API Карт

Заголовок не указан

Пост в архиве.

Добрый день, друзья разработчики! Возникла необходимость определять координаты точки, по нажатию на ней мышкой. То есть, например, в наборе адресов Яндекса, есть ул. Островского д.1, но нет ул. Островского д.8., а маркер надо ставить именно сюда. Для этого предлагается просто определять координаты этой точки кликом на карте. Подскажите как это сделать, кто встречался с такой задачей.

10 комментариев
Sergey Konstantinov
28 января 2016, 08:57
YMaps.Events.observe(map, map.Events.Click, function (e) { //e.getGeoPoint() вернет координаты клика. alert(e.getGeoPoint()); //ну или любые другие действия. });
Спасибо большое, выручили))
А как теперь вытащить сами координаты?
Что Вы подразумеваете под словом "вытащить"?)
Смотрите, например, хотелось бы не только определить координаты, но и как-то в дальнейшем их использовать в виде отдельных переменных, а не как одну в виде строки, как это на выходе скрипта
А если так тогда можно скопировать. YMaps.Events.observe(map, map.Events.Click, function (mEvent) { var myHtml = "Значение: " + mEvent.getGeoPoint() + " на масштабе " + map.getZoom(); map.openBalloon(mEvent.getGeoPoint(), myHtml); });
Да вот не хочется копировать, а хочется в других функциях использовать координаты отдельно
Можно записать координаты в переменную. var coord; YMaps.Events.observe(map, map.Events.Click, function (e) { coord = e.getGeoPoint(); }); ну и используй в другой функции: (function alerter(data) { alert(data); })(coord); Можно записать координаты в какой-нибуть html-элемент, например, в div. Если у нас есть такой элемент: Следующий код запишет координаты в этот самый див: YMaps.Events.observe(map, map.Events.Click, function (e) { document.getElementById("block").innerHTML = e.getGeoPoint().toString(); }); Просто определись в каком виде тебе нужны координаты и где и вперед :) Удачи!
ну код был такой =)
Ну как сказать почти правильно меня поняли, но всяко спасибо, ваш код сильно помог)