2015-03-23 1 views
0

Я заинтересован в поиске объектов рядом с точками на карте, которую пользователь выбирает, щелкая. Я добавил обработчик кликов на карту, используя google.maps.event.addListener, который берет lat/lng щелкнутого местоположения. Прекрасно работает.Получение обратного вызова/местоположения при нажатии на интересующие вас объекты

Проблема в том, что на карте есть объекты POI, которые при нажатии на них не запускают обычное событие и не отображают их собственное значение, поэтому я понятия не имею, где пользователь щелкнул. Я могу написать какой-то ужасный код, чтобы вставлять содержимое в информационное окно, но я не уверен, как вычислить lat/lng POI.

В порядке наилучшего решения худшего, я хотел бы сделать одно из следующего:
1. Зарегистрируйтесь для какого-либо события, которое будет уведомляться при нажатии пользователем на POI, установка моего собственного содержимого для информационного окна , и быть уведомленным о лате/POI.
2. Отключите эту инфузию для POI, у вас есть нормальный огонь обработчика кликов.
3. У вас есть обычный стрелок-обработчик при попытке щелчка POI, как видно на https://developers.google.com/maps/documentation/javascript/events
4. Отключите POI от показа.

Любые советы?

+0

Единственный вариант вашего списка, который работает, - отключить POI. Связанный с этим вопрос: [отключить ориентируемый на клик ориентир на карте google] (http://stackoverflow.com/questions/7267789/disable-clickable-landmark-on-google-map) – geocodezip

+0

Обратите внимание, что демо на https://developers.google. com/maps/documentation/javascript/events запускает событие click при нажатии на POI, но, похоже, это не так, как в моем приложении. Что они делают по-другому? –

+0

Это похоже только в их документации. [Fiddle, содержащий тот же код] (http://jsfiddle.net/gg8zw5t4/), событие click не срабатывает. – geocodezip

ответ

0

Я считаю, что это как-то связано с версией API.

В Fiddle @geocodezip mentioned, они загрузить этот API: https://maps.googleapis.com/maps/api/js?sensor=false&libraries=geometry,places&ext=.js

Однако, если вы посмотрите на documentation example, они загружают эти 2 скрипта: https://maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true
и
https://maps.gstatic.com/maps-api-v3/api/js/20/4/main.js

И похоже если я загружаю те же скрипты в Fiddle, нажмите на POI. I fork demo here.

надеюсь, что эта помощь.

Смежные вопросы