Я хочу, чтобы просмотреть и удалить маркеры на карте в зависимости от пользователя мыши по типу расположения ..Удаление группы маркеров Google Maps API v3
Я использую этот код, чтобы удалить маркеры
1- Определить markersArray, как глобальный массив
var markersArray =new Array();
2- Определение clearOverlays функционировать
function clearOverlays() {
if (markersArray && markersArray.length) {
google.maps.Map.prototype.clearOverlays = function() {
for (var i = 0; i < markersArray.length; i++) {
markersArray[i].setMap(null);
}
}
markersArray = [];
markersArray = new Array();
markersArray.length = 0;
}
}
3- Я вызываю функцию, когда хочу удалить маркеры
Проблема такова: ничего не удалено с карты!
Мне интересно узнать почему!
Edit: Вот где я добавить маркеры и подтолкнуть их в markersArray
downloadUrl("getPlacesForType/"+markerType+"/"+lang, function(data) {
var xml = data.responseXML;
var myMarkersArray = xml.documentElement.getElementsByTagName("marker");
for (var i = 0; i < myMarkersArray.length; i++) {
var name = myMarkersArray[i].getAttribute("name");
var version = myMarkersArray[i].getAttribute("version");
var description = myMarkersArray[i].getAttribute("description");
var type = myMarkersArray[i].getAttribute("type");
var point = new google.maps.LatLng(
parseFloat(myMarkersArray[i].getAttribute("lat")),
parseFloat(myMarkersArray[i].getAttribute("lng")));
var html = "<b>" + name + "</b> <br/>" + description;
var icon = customIcons[type] || {};
var marker = new google.maps.Marker({
map: map,
position: point ,
icon: icon.icon,
shadow: icon.shadow
});
markersArray.push(marker);
bindInfoWindow(marker, map, infoWindow, html);
}
});
Что и когда вы добавляете в markersArray? – duncan
@duncan, я добавляю часть того, как добавляю маркеры в markersArray, добавляю их при нажатии на якорь и класс showMarkers. когда там класс не завершается, я вызываю removeOverlay fnction – palAlaa
Похоже на ["category" map] (http://www.geocodezip.com/v3_MW_example_categories.html) – geocodezip