Joa,
auf dem alten Forum hatte ich schon mal Problem mit der neuen googe maps api geäußert. Mittlerweile bin ich schon viel weiter. Allerdings ist mir heute was seltsames aufgefallen bei dem ich der Meinung bin das dies bis vor Kurzen noch funktioniert hat.
Folgendes Szenario: Webseite mit Google-Maps (v3) Karte. Marker werden aus einer XML-Geladen:
Hat jemand eine Idee? Was ist hier falsch? Wieso zeigt er immer nur die selbe Information an (immer den letzten Marker der XML)?
Gruß godlike
auf dem alten Forum hatte ich schon mal Problem mit der neuen googe maps api geäußert. Mittlerweile bin ich schon viel weiter. Allerdings ist mir heute was seltsames aufgefallen bei dem ich der Meinung bin das dies bis vor Kurzen noch funktioniert hat.
Folgendes Szenario: Webseite mit Google-Maps (v3) Karte. Marker werden aus einer XML-Geladen:
Code:
<script type="text/javascript">
//<![CDATA[
var cluster = [];
var map = new google.maps.Map(document.getElementById("map"), {
center: new google.maps.LatLng(<?php echo $land['land_lat'] ?>, <?php echo $land['land_lng'] ?>),
zoom: <?php echo $land['land_center'] ?>,
mapTypeId: 'roadmap'
});
var infowindow = new google.maps.InfoWindow;
// marker aus XML holen
downloadUrl("markers.xml", function(doc) {
var xmlDoc = xmlParse(doc);
var markers = xmlDoc.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var name = markers[i].getAttribute("name");
var point = new google.maps.LatLng(
parseFloat(markers[i].getAttribute("lat")),
parseFloat(markers[i].getAttribute("lng")));
var url = markers[i].getAttribute("url");
var ort = markers[i].getAttribute("ort");
var plz = markers[i].getAttribute("plz");
var html = "<span>" + ort + "-" + name + "<\/span>" + plz + " - " + url;
var marker = new google.maps.Marker({
map: map,
position: point,
icon: '../gfx/icon.png'
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent(html);
infowindow.open(map, marker);
}
}) (marker, i));
cluster.push(marker);
}
var mc = new MarkerClusterer(map,cluster);
});
function bindInfoWindow(marker, map, infoWindow, html) {
google.maps.event.addListener(marker, 'click', function() {
infoWindow.setContent(html);
infoWindow.open(map, marker);
});
}
function doNothing() {}
//]]>
</script>
Hat jemand eine Idee? Was ist hier falsch? Wieso zeigt er immer nur die selbe Information an (immer den letzten Marker der XML)?
Gruß godlike