我有一个Google map
,由以下代码显示
map = new google.maps.Map(document.getElementById('map'), {
zoom: 15,
center: { lat: 37.7577, lng: -122.4376 }
});
正如您所看到的,lat / lng
的值是静态的。但是一旦输入某个位置,我会在Yelp API
搜索这些地点。这反过来给了我位置(以及lat/lng
),并通过以下代码将它们成功地固定在地图上
results = data['yelp_places_latlnghash'];
for (var i = 0; i < results.length; i++) {
var markerLetter = String.fromCharCode('A'.charCodeAt(0) + i);
var markerIcon = MARKER_PATH + markerLetter + '.png';
marker[i] = new google.maps.Marker({
map: map,
icon: markerIcon,
title: results[i].name,
position: { lat: results[i].latitude , lng: results[i].longitude }
});
marker[i].placeResult = results[i];
google.maps.event.addListener(marker[i], 'click', showInfoWindow_yelp);
addResult(results[i], i);
}
所有引脚均已成功显示。但问题是map
不会移动到新固定的位置,我们手动执行此操作。 (我知道地图的拖动功能是在google maps API
中构建的,但我想通知您我已经定制了功能,现在我希望map
绑定所有搜索的位置。任何帮助将不胜感激
答案 0 :(得分:0)
您可以在标记中添加选项center : { lat: results[i].latitude , lng: results[i].longitude }
。或者您可以在创建标记后设置中心。设置中心的方法是&#34; map.setCenter({ lat: results[i].latitude , lng: results[i].longitude })
&#34;