将谷歌地图居中到位置字符串

Center Google Maps to location string

本文关键字:位置 字符串 谷歌地图      更新时间:2023-09-26

使用Google Maps API,我想将地图居中为字符串而不是Lat/Lng

var mapOptions = {
    center: "Paris"
};

您可以使用地理编码器。

工作代码片段:

var geocoder;
var map;
function initialize() {
  geocoder = new google.maps.Geocoder();
  var latlng = new google.maps.LatLng(0, 0);
  var mapOptions = {
    zoom: 8,
    center: latlng
  };
  map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions);
  // Call the codeAddress function (once) when the map is idle (ready)
  google.maps.event.addListenerOnce(map, 'idle', codeAddress);
}
function codeAddress() {
  // Define address to center map to
  var address = 'Paris, France';
  geocoder.geocode({
    'address': address
  }, function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
      // Center map on location
      map.setCenter(results[0].geometry.location);
      // Add marker on location
      var marker = new google.maps.Marker({
        map: map,
        position: results[0].geometry.location
      });
    } else {
      alert("Geocode was not successful for the following reason: " + status);
    }
  });
}
initialize();
#map-canvas {
  height: 180px;
}
<div id="map-canvas"></div>
<script src="//maps.googleapis.com/maps/api/js?key=AIzaSyCkUOdZ5y7hMm0yrcCQoCvLwzdM6M8s5qk"></script>

JSFiddle 演示

编辑:当然,您可以像这样对完整的地址进行地理编码:

// Define address to center map to
var address = 'Rue Casse-Cul, Montboucher-sur-Jabron, France';