我有以下代码,允许用户单击地图上的某个位置,并记录他们单击的任何位置的 GPS 位置。它在后端正常工作,但每当用户点击不止一次时,它就会在地图上留下多个标记。它始终保留最后一个位置,因此它可以工作,但对于不知道后端发生了什么的用户来说,这有点令人困惑。我可以做一些小技巧来做到这一点,以便每当用户单击以创建新标记时,旧标记就会被删除?
代码:
var map;
var GPSlocation;
function initialize() {
var haightAshbury = new google.maps.LatLng(37.7699298, -93.4469157);
var mapOptions = {
zoom: 4,
center: haightAshbury,
mapTypeId: google.maps.MapTypeId.TERRAIN
};
map = new google.maps.Map(document.getElementById("map"), mapOptions);
google.maps.event.addListener(map, 'click', function(event) {
addMarker(event.latLng);
});
}
function addMarker(location) {
//I save the location right here
GPSlocation = location;
document.getElementById("GPSlocation").value = GPSlocation;
marker = new google.maps.Marker({
position: location,
map: map
});
}