मैंने मार्करों की एक सरणी बनाई है। मैं 'क्लिक' सुनने के लिए मार्करों की इन सरणी का उपयोग करता हूं और मार्कर को Google मानचित्र पर रखता हूं, साथ ही 'सभी मार्करों को साफ़ करने' के लिए फ़ंक्शंस बनाना, 'सभी मार्करों को फिर से प्रदर्शित करना' और 'सभी मार्कर हटाएं'।Google मानचित्र पर एक समय में एक मार्कर को कैसे हटाएं
समस्या यह है कि, मैं इसे इस तरह से कैसे कर सकता हूं जहां मैं एक-मार्कर-ए-टाइम को साफ़ या हटाने में सक्षम हूं? कारण यह है कि अगर मैं गलती से ऐसे स्थान पर साजिश करता हूं जहां मैं नहीं चाहता, और मैं इसे साफ़/हटाना चाहता हूं, तो मैं इसे नहीं कर सका। अगर मैं स्पष्ट करने के लिए थे/है कि विशेष मार्कर, मार्कर है कि मैं पहले से साजिश रची साफ़ कर दिया जाएगा के बाकी/रूप में अच्छी तरह से नष्ट कर दिया ... हटाना
मेरे कोड:
//Initialize the map
function initialize() {
var myLatlng = new google.maps.LatLng(2,110);
var myOptions = {
zoom: 3,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.HYBRID
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
infowindow = new google.maps.InfoWindow({
content: "loading..."
});
}
function changeForm(the_form) {
window.location = the_form;
}
//Listen for click
function marker() {
google.maps.event.addListener(map, 'click', function(event) {
addMarker(event.latLng);
});
}
// Place markers in by click
function addMarker(location) {
marker = new google.maps.Marker({
position: location,
map: map,
title:"Specified Location",
icon: 'images/greenPoint.png'
});
markersArray.push(marker);
}
// Deletes all markers in the array by removing references to them
function deleteOverlays() {
if (markersArray) {
for (i in markersArray) {
markersArray[i].setMap(null);
}
markersArray.length = 0;
}
}
// Removes the overlays from the map, but keeps them in the array
function clearOverlays() {
if (markersArray) {
for (i in markersArray) {
markersArray[i].setMap(null);
}
}
}
// Shows any overlays currently in the array
function showOverlays() {
if (markersArray) {
for (i in markersArray) {
markersArray[i].setMap(map);
}
}
}