2017-01-10 138 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(),以数据的新的纬度/经度。

相关问题