2017-01-10 136 views
0

我有一個谷歌地圖API的問題,當我不斷地改變標記位置,這留下了地圖上的痕跡,我需要移動標記而不留下痕跡。 我實際上是從Firebase中的數據庫獲取緯度和經度,並需要表示汽車的路線。如何最終在Google Maps API中更改標記位置?

var mapOptions = { 

center: new google.maps.LatLng(20.615977, -103.339358), 
zoom: 12 

}; 

var map = new google.maps.Map(document.getElementById("map"), mapOptions);  

firebase.database().ref('route').on('value', function(data) { 

var start = new google.maps.Marker({ 
    position: {lat: latitud, lng: longitud}, 
    map: map, 
    icon: '../icon/car.png' 
}); 

var myLatlng = new google.maps.LatLng(data.val().latitude, data.val().longitude); 

start.setPosition(myLatlng); 
start.setMap(map); 

}); 
+1

所以你需要移動現有的標記,而不是創建一個新的? –

+0

谷歌地圖標記有一個'setPosition'方法 –

回答

0

您正在每個事件中創建一個新標記。相反,創建事件處理程序之前的標記(和呼叫setMap那裏),並在您的處理程序,只是做的setPosition(),以數據的新的緯度/經度。

相關問題