howto: dynamisch aktualisieren-Marker von JSON auf google maps
Ich versuche zu aktualisieren, die Position eines markers mit der sich die gesamte Seite aktualisiert wird. Ich habe versucht, zu verwenden setTimeout(function()
aber ich habe kein Glück..
hier ist mein code habe ich so weit..
vielen Dank im Voraus
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(35.66, -80.50),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
var json = (function () {
var json = null;
$.ajax({
'async': false,
'global': false,
'url': "getjson.php",
'dataType': "json",
'success': function (data) {
json = data; } });
return json;})();
for (var i = 0, length = json.length; i < length; i++) {
var data = json[i],
latLng = new google.maps.LatLng(data.lat, data.lng);
var marker = new google.maps.Marker({
position: latLng,
map: map,
title: data.title
});
}
var infoWindow = new google.maps.InfoWindow();
google.maps.event.addListener(marker, "click", function(e) {
infoWindow.setContent(data.description);
infoWindow.open(map, marker);
});
(function(marker, data) {
google.maps.event.addListener(marker, "click", function(e) {
infoWindow.setContent(data.description);
infoWindow.open(map, marker);
});
})(marker, data);
}
google.maps.event.addDomListener(window, 'load', initialize);
hier mein JSON-Ausgabe.
[{"lat":35.6606376,"lng":-80.5048653,"content":"bca"}, {"lat":42.6799504,"lng":-36.4949205,"content":"abc"}]
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde vorschlagen, mit setInterval anstatt setTimeout.
Hier ist etwas code, der simuliert, ein update via JSON in eine fiddle, der Verwendung Ihrer bereitgestellten JSON mit den erforderlichen "Beschreibung" Mitglied Hinzugefügt für jeden marker:
https://developers.google.com/maps/documentation/javascript/reference
Ich glaube nicht, dass Sie brauchen, um das Neuzeichnen der Karte, aber im Falle Sie tun: