Unten ist der Code meiner Website. Es wird jede Sekunde aktualisiert. Nach dem Auffrischen des neuen Breitengrads werden die neuen Marker geladen, aber die alten Marker bleiben erhalten. Ich habe viele Foren usw. ohne Glück ausprobiert. Jede Hilfe wird geschätzt, danke.Klare alte Markierung (en) dann Update
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(-36.363, 175.044),
zoom: 5,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var infoWindow = new google.maps.InfoWindow();
map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
window.setInterval(function() {
readData();
}, 1000);
}
function readData() {
$.getJSON('https://crossorigin.me/http://radar1.ddns.net:3080/data/aircraft.json', function (data) {
$.each(data.aircraft, function (i, value) {
var myLatlng = new google.maps.LatLng(value.lat, value.lon, value.flight, value.altitude);
var marker = new google.maps.Marker({
position: myLatlng,
icon: 'airplane.jpg',
map: map,
title: "Callsign Altitude " + value.flight + value.altitude
});
}
var infowindow = new google.maps.InfoWindow({
content: '<b>Speed:</b> ' + value.speed+ '<b> HEX:</b>' + value.hex+ '<b> Altidtude: </b>' +value.altitude + '<b> Vertical Rate: </b>' +value.vert_rate
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.open(map, marker);
});
});
});
}
Dank Chris Ich habe die Frage bearbeitet. Die Markierungen zeigen, aber wenn sie erfrischt werden, möchte ich, dass die alten entfernt werden. –
Erstellen Sie ein Array von Markern. Rufen Sie in Ihrem '$ .each' 'marker [i] .setPosition (...)' –