Я пытаюсь создать веб-сайт, который позволяет мне щелкнуть маркеры на карте, и появится круг, выделяющий область. Я закодировал его для работы, но, однако, я не могу удалить круг в отличие от infowindow. Я хочу иметь кнопку удаления круга, которая может удалить все круги на карте (если несколько кругов отображаются на карте), как кнопка удаления в https://developers.google.com/maps/documentation/javascript/examples/polyline-remove. Если нет, возможно, чтобы исчезнуть круг, щелкнув по другому маркеру.Добавление кнопки удаления круга
Кроме того, как я могу препятствовать тому, чтобы круг становился более непрозрачным, когда пользователь спам маркер?
Это мой код:
function initialize() {
var mapCanvas = document.getElementById('map-canvas');
var mapOptions = {
center: new google.maps.LatLng(37.09024, -95.712891),
zoom: 4,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(mapCanvas, mapOptions)
setMarkers(map, atm);
}
var atm = [
['<h1 class="big">newyork</h1>',40.714352, -74.005973,2],
['<h1 class="big">losangeles</h1>',34.052234, -118.243684,1],
['<h1 class="big">vancouver</h1>',49.25, -123.1,3],
];
var infowindow = new google.maps.InfoWindow({
maxWidth: 200
});
function setMarkers(map, locations) {
for (var i = 0; i < locations.length; i++) {
var atms = locations[i];
var myLatLng = new google.maps.LatLng(atms[1], atms[2]);
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: atms[0],
zIndex: atms[3]
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent(locations[i][0]);
infowindow.open(map, marker);
}
})(marker, i));
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
var myCity = new google.maps.Circle({
center:new google.maps.LatLng(locations[i][1], locations[i][2]),
radius:20000,
strokeColor:"#0000FF",
strokeOpacity:0.8,
strokeWeight:2,
fillColor:"#0000FF",
fillOpacity:0.3
});
myCity.setMap(map)
}
})(marker, i));
}
}
google.maps.event.addDomListener(window, 'load', initialize);
Будем надеяться, что функция как
function removeLine() {
flightPath.setMap(null);
}
Что позволяет мне создавать
<input onclick="removeLine();" type=button value="Remove line">