in IE krijg ik wel de kaart te zien, maar geen markers.
in Firefox krijg ik keurig de kaart te zien inclusief de markers.


code:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Interimbureau's op de kaart</title>
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAdAmVvzALJZIsAubRPeJdXBRKmbqU0HiOZ3tsf-Z9I-zFAMCabhScYLvQUA50gO9Nn_bmtvzjLmydZA"
type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[



function load() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(51.800000, 5.500000), 8);


GDownloadUrl("markers.xml", function(data) {
var xml = GXml.parse(data);
var markers = xml.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var naam = markers[i].getAttribute("Naam");
var adres = markers[i].getAttribute("Adres");
var postcode = markers[i].getAttribute("Postcode");
var woonplaats = markers[i].getAttribute("Woonplaats");
var email = markers[i].getAttribute("Email");
var contactpersoon = markers[i].getAttribute("Contactpersoon");
var telefoon = markers[i].getAttribute("Telefoon");
var website = markers[i].getAttribute("Website");
var point = new GLatLng(parseFloat(markers[i].getAttribute("Latitude")),
parseFloat(markers[i].getAttribute("Longitude")));

var marker = createMarker(point, naam, adres, postcode, woonplaats, email, contactpersoon, telefoon, website);
map.addOverlay(marker);
}
});
}
}

function createMarker(point, naam, adres, postcode, woonplaats, email, contactpersoon, telefoon, website) {
var marker = new GMarker(point);
var html = "<b>" + naam + "</b> <br/>" + adres + "<br/>" + postcode + " " + woonplaats + "<br/>" + contactpersoon + "<br/>" + telefoon + "<br/>" + email + "<br/>" + website;
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});
return marker;
}
//]]>
</script>
</head>

<body onload="load()" onunload="GUnload()">
<div id="map" style="width: 1200px; height: 1000px"></div>
</body>
</html>

Pas je script even aan en gebruik [ignore]
 en 
[/ignore] tags om je code heen. Om php code zet je uiteraard dit:<?php en ?>Gebruik je knop om dit te doen.

SanThe.
en laat ook even de markers.xml zien
in IE krijg ik wel de kaart te zien, maar geen markers.
in Firefox krijg ik keurig de kaart te zien inclusief de markers.


code:

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Interimbureau's op de kaart</title>
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAdAmVvzALJZIsAubRPeJdXBRKmbqU0HiOZ3tsf-Z9I-zFAMCabhScYLvQUA50gO9Nn_bmtvzjLmydZA" 
type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[



function load() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(51.800000, 5.500000), 8);


GDownloadUrl("markers.xml", function(data) {
var xml = GXml.parse(data);
var markers = xml.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var naam = markers.getAttribute("Naam");
var adres = markers[i].getAttribute("Adres");
var postcode = markers[i].getAttribute("Postcode");
var woonplaats = markers[i].getAttribute("Woonplaats");
var email = markers[i].getAttribute("Email");
var contactpersoon = markers[i].getAttribute("Contactpersoon");
var telefoon = markers[i].getAttribute("Telefoon");
var website = markers[i].getAttribute("Website");
var point = new GLatLng(parseFloat(markers[i].getAttribute("Latitude")),
parseFloat(markers[i].getAttribute("Longitude")));

var marker = createMarker(point, naam, adres, postcode, woonplaats, email, contactpersoon, telefoon, website);
map.addOverlay(marker);
}
});
}
}

function createMarker(point, naam, adres, postcode, woonplaats, email, contactpersoon, telefoon, website) {
var marker = new GMarker(point);
var html = "<b>" + naam + "</b> <br/>" + adres + "<br/>" + postcode + " " + woonplaats + "<br/>" + contactpersoon + "<br/>" + telefoon + "<br/>" + email + "<br/>" + website;
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});
return marker;
}
//]]>
</script>
</head>

<body onload="load()" onunload="GUnload()">
<div id="map" style="width: 1200px; height: 1000px"></div>
</body>
</html>


een voorbeeld van de markers.xml:

<?xml version="1.0" encoding="iso-8859-1"?>
<markers>
<marker Naam="Aatop" Adres="Nijverheidsstraat 60" Postcode="3371 XE" Woonplaats="Hardinxveld-Giessendam" Email="[email protected]" Contactpersoon="" Telefoon="0184-620820" Website="http://www.aatop.nl" Latitude="51.823475" Longitude="4.809977" />
</markers>
dat is dus niet de bedoeling van xml he.
de key="value" waarden zijn voor meta-data, data over data.
jij gebruikt het als data...
dit is meer de bedoeling geloof ik:

<?xml version="1.0" encoding="iso-8859-1"?>
<markers>
    <marker>
        <naam>Aatop</naam><adres>Nijverheidsstraat 60</adres> enzovoorts... </marker >
    </markers>
ik heb de xmlfile precies zo aangepast zoals jij het laat zien. dat maakt echter totaal niks uit!
ik heb nu scriptdebugger geinstalleerd voor IE en die geeft aan dat XML.documentelement (zie regel 22) leeg is......
misschien dat dat je verder helpt?

Natuurlijk maakt het niks uit, om hiermee te werken zal je hele JS moeten worden aangepast. Pepijn heeft echter wel gelijk, jij 'misbruikt' XML.
Waarom jouw code niet werkt weet ik niet.
In Firefox doen beide XML-bestanden het gewoon, in IE beide niet.
Het gaat mij dus om de oplossing van dit probleem.
ik zou het leuk vinden als iemand zich nog eens in mijn probleem wil verdiepen.

Reageren