我已经使用谷歌地图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获取数据以便绘制新标记。谢谢你的任何建议。
您可以将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!'
});
});