Google地图 - 获取当前地图位置的地址

时间:2014-04-13 08:07:15

标签: javascript google-maps

我正在建立一个使用谷歌地图的网站。有一个div conatinint地图可以用指针移动。

我需要在地图中获取当前居中视图的最近街道地址。我该怎么做?

由于

2 个答案:

答案 0 :(得分:1)

根据gmap geocoding,您可以通过直接将其传递给url找到坐标的json数组,例如

location: lat:40.714224, lng:-73.961452

答案 1 :(得分:1)

使用Google Map的GeoCoding: https://developers.google.com/maps/documentation/javascript/examples/geocoding-reverse

function initMap() {
        var map = new google.maps.Map(document.getElementById('map'), {
          zoom: 8,
          center: {lat: 40.731, lng: -73.997}
        });
        var geocoder = new google.maps.Geocoder;
        var infowindow = new google.maps.InfoWindow;

        document.getElementById('submit').addEventListener('click', function() {
          geocodeLatLng(geocoder, map, infowindow);
        });
      }

      function geocodeLatLng(geocoder, map, infowindow) {
        var input = document.getElementById('latlng').value;
        var latlngStr = input.split(',', 2);
        var latlng = {lat: parseFloat(latlngStr[0]), lng: parseFloat(latlngStr[1])};
        geocoder.geocode({'location': latlng}, function(results, status) {
          if (status === 'OK') {
            if (results[0]) {
              map.setZoom(11);
              var marker = new google.maps.Marker({
                position: latlng,
                map: map
              });
              infowindow.setContent(results[0].formatted_address);
              infowindow.open(map, marker);
            } else {
              window.alert('No results found');
            }
          } else {
            window.alert('Geocoder failed due to: ' + status);
          }
        });
      }