我已经使用Google Maps API成功绘制了标记。
var latlng = {lat: 34.7651458,lng: 121.453208};
map = new google.maps.Map(document.getElementById('map'), {
center: latlng,
zoom: 18
});
var marker = new google.maps.Marker({
position: latlng,
map: map,
title: 'Marker!'
});
marker.setMap(map);
但是,如果用户遍历地图,则centre:latlng
会发生变化。如果要绘制一个新标记,对于这个新的centre
,我该如何捕获centre
中的更改以从API提取数据以绘制新标记。感谢您的任何建议。
答案 0 :(得分:1)
您可以将dragend
事件监听器添加到map
中(或者也可以使用center_changed
)。使用map.getCenter()
获取地图的中心并创建一个标记。
map.addListener('dragend', function() {
var c = map.getCenter(); //Get new center of the map
var marker = new google.maps.Marker({ //Create a new marker and use the map's center as the location.
position: c,
map: map,
title: 'Marker!'
});
});