2016-08-08 5 views
-1

Ich schaffe Google Map-Markierungen und ihnen eine ID zuweisen wie folgt Zu einem späteren Zeitpunkt, wie kann ich einen Marker mit der ID, die ich ihm zugewiesen habe, aufnehmen und dann seine Position aktualisieren?Aktualisieren einer Position Google Map Marker durch ID ist

Ich verstehe, dass Sie die Position mit setPosition (latlng: LatLng) auf dem Marker-Objekt in der Google API aktualisieren können, aber wie greife ich den Marker nach seiner ID?

+0

Vielleicht könnte man mit .filter() hier arbeiten. –

Antwort

-1

Versuchen Sie diesen Code

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR-API-KEY&libraries=places" type="text/javascript"></script> 

    <script> 
     $(document).ready(function() { 


      var long = $('#ContentPlaceHolder1_hidlog').val(); 
      var lati = $('#ContentPlaceHolder1_hidlat').val(); 

      var mapCenter = new google.maps.LatLng(lati, long); 
       var map; 
       map_initialize(); 
       function map_initialize() { 


        var googleMapOptions = 
        { 
         center: mapCenter, 
         zoom: 18, 
         panControl: true, 
         zoomControl: true, 
         zoomControlOptions: { 
          style: google.maps.ZoomControlStyle.SMALL 
         }, 
         scaleControl: true, 
         mapTypeId: google.maps.MapTypeId.ROADMAP 
        }; 
        var marker = new google.maps.Marker({ 
         position: mapCenter, 
         title: "Event Map" 
        }); 
        map = new google.maps.Map(document.getElementById("google_map"), googleMapOptions); 
        marker.setMap(map); 
       } 
       var getCen = map.getCenter(); 
       google.maps.event.addDomListener(window, 'resize', function() { 
        map.setCenter(getCen); 
       }); 

       google.maps.event.addDomListener(window, 'load', map_initialize()); 

       google.maps.event.addDomListener(window, "resize", resizingMap()); 

       $('#showmap').on('show.bs.modal', function() { 
        resizeMap(); 
       }) 

       function resizeMap() { 
        if (typeof map == "undefined") return; 
        setTimeout(function() { resizingMap(); }, 400); 
       } 

       function resizingMap() { 
        if (typeof map == "undefined") return; 
        var center = map.getCenter(); 
        google.maps.event.trigger(map, "resize"); 
        map.setCenter(center); 
       } 
      }); 

    </script>