2014-08-28 74 views
0

我正在更新我的谷歌地图上的标记,并不断从服务器上获取新的位置。这些头寸存储在名为LongitudeLatitude的变量中。我设法让标记移动到新的位置,但地图不断刷新。我能做些什么来阻止这种情况的发生?我只想要标记移动。如何在将标记设置到新位置时防止Google地图刷新?

google.maps.visualRefresh = true; 

//in my actual code the coordinates aren't var lat and lon 

var myLatlng = new google.maps.LatLng(lat,lon); 
var mapOptions = { 
    zoom: 15, 
    center: myLatlng, 
    mapTypeControl: true, 
    mapTypeControlOptions: { 
     style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, 
     position: google.maps.ControlPosition.BOTTOM_CENTER 
    }, 
    panControl: true, 
    panControlOptions: { 
     position: google.maps.ControlPosition.TOP_RIGHT 
    }, 
    zoomControl: true, 
    zoomControlOptions: { 
     style: google.maps.ZoomControlStyle.LARGE, 
     position: google.maps.ControlPosition.LEFT_CENTER 
    }, 
    scaleControl: true, 
    streetViewControl: true, 
    streetViewControlOptions: { 
     position: google.maps.ControlPosition.LEFT_TOP 
    } 
} 

var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); 
google.maps.event.trigger(map, 'resize'); 
var marker = new google.maps.Marker({ 
    position: myLatlng, 
    map: map, 
    title: 'Hello World!' 
}); 


var latlng = new google.maps.LatLng(Latitude,Longitude); 
marker.setPosition(latlng); 
//map.setCenter(latlng); 
//covertlisten.remove(); 
}); 
} 

google.maps.event.addDomListener(window, 'load', initialize); 
+0

这是设置代码,或者你正在使用更新标记的代码? – OneHoopyFrood 2014-08-28 19:09:34

+0

代码来更新标记 – Brandon 2014-08-28 19:25:46

+0

看看[这个问题。](http://stackoverflow.com/questions/16338774/show-a-moving-marker-on-the-map)是不是像你'重新尝试做? – OneHoopyFrood 2014-08-28 19:49:26

回答

0

摆脱 map.setCenter(latlng);

+0

,这并没有真正的工作。我更新了上面的全部代码。 – Brandon 2014-08-28 19:31:58

+0

地图刷新到哪里? – javisrk 2014-08-28 19:44:29

+0

通过“那没有真正的工作”你是什么意思?它还清爽吗?它在做别的什么吗?有什么变化吗?你需要更清楚。 – OneHoopyFrood 2014-08-28 19:44:43