2013-04-03 7 views
64

पर Google मानचित्र पर मार्कर जोड़ें मैं उपयोगकर्ता द्वारा मानचित्र पर क्लिक छोड़ने पर Google मानचित्र पर मार्कर जोड़ने का एक बहुत ही सरल उदाहरण खोजने के लिए आश्चर्यजनक रूप से संघर्ष कर रहा हूं।क्लिक करें

मैंने पिछले कुछ घंटों के लिए देखा है, और Google मानचित्र API दस्तावेज़ों से परामर्श लिया है, और कुछ मदद की सराहना करेंगे!

उत्तर

122

अधिक शोध के बाद, मुझे एक समाधान खोजने में कामयाब रहा।

google.maps.event.addListener(map, 'click', function(event) { 
    placeMarker(event.latLng); 
}); 

function placeMarker(location) { 
    var marker = new google.maps.Marker({ 
     position: location, 
     map: map 
    }); 
} 
+1

हम उपयोगकर्ता केवल एक बार जोड़ने में सक्षम बना सकते हैं? और मार्कर ले जाएँ? –

+0

बहुत बढ़िया, मेरे लिए काम किया। – Pupil

16

यह वास्तव में एक दस्तावेज विशेषता है, और here

// This event listener calls addMarker() when the map is clicked. 
    google.maps.event.addListener(map, 'click', function(e) { 
    placeMarker(e.latLng, map); 
    }); 

    function placeMarker(position, map) { 
    var marker = new google.maps.Marker({ 
     position: position, 
     map: map 
    }); 
    map.panTo(position); 
    } 
6

वर्तमान में विधि पाया जा सकता है नक्शा करने के लिए श्रोता जोड़ने के लिए किया जाएगा

map.addListener('click', function(e) { 
    placeMarker(e.latLng, map); 
}); 

और न

google.maps.event.addListener(map, 'click', function(e) { 
    placeMarker(e.latLng, map); 
}); 

Reference

2

@ कैबिबी अला, आप पहले क्लिक पर मार्कर सेट कर सकते हैं और फिर बाद के क्लिक पर स्थिति बदल सकते हैं।

var marker; 

google.maps.event.addListener(map, 'click', function(event) { 

    placeMarker(event.latLng); 

}); 

function placeMarker(location) { 

if (marker == null) 
{ 
    marker = new google.maps.Marker({ 
     position: location, 
     map: map 
    }); } else { marker.setPosition(location); } } 
19

2017 में, समाधान है:

map.addListener('click', function(e) { 
    placeMarker(e.latLng, map); 
}); 

function placeMarker(position, map) { 
    var marker = new google.maps.Marker({ 
     position: position, 
     map: map 
    }); 
    map.panTo(position); 
} 
संबंधित मुद्दे