Hey!
Having a tabbed info window that opens when I move the mouse over the
marker. I have two (2) tabs in the window. One tab shows some text and
the other tab should show a "minimap" with a defined zoom level of the
same point as the marker. The point is in latlng. I retrieve
information from an XML file.
I just can't understand why this is not working. The code I have seems
right in my opinion.
I can see the smallMapControls in the tab window and also the "Powered
by Google" symbol.
Here are some kode:
<script type="text/javascript">
//Instansierer hovedkartet og knytter dette mot <div> taggen "map"
var map = new GMap2(document.getElementById("map"));
//Lager en hendelse som henter fram lengde og breddegrad når brukeren
trykker på kartet
GEvent.addListener(map,"click", function(overlay,latlng) {
if (latlng) {
var myHtml = "Lengde og breddegrad er:<br>( "+
latlng.toUrlValue(6) + "))";
map.openInfoWindow(latlng,myHtml);
}
});
//Knytter ulike kontroller mot kartet
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(0, 0), 2);
//Henter fram XML fila og gjør det mulig å lese data fra denne
var request = GXmlHttp.create();
request.open("GET", "serviceTrips2.xml", true);
request.onreadystatechange = function() {
if (request.readyState == 4) {
var xmlDoc = request.responseXML;
//Her henter man fram taggen "serviceTrip" fra XML fila
var serviceTrips = xmlDoc.documentElement.getElementsByTagName
("ServiceTrip");
//For-løkke som kjører gjennom alle "serviceTrip" taggene i XML fila
og henter ut data fra ulike under-tagger.
//Videre i løkka så lager man markører på kartet vha metoden
createMarker
for (var i = 0; i < serviceTrips.length; i++) {
var point = new GLatLng(parseFloat(serviceTrips
[i].getElementsByTagName("latitude")[0].childNodes[0].nodeValue),
parseFloat(serviceTrips[i].getElementsByTagName
("longitude")[0].childNodes[0].nodeValue));
var info = serviceTrips[i].getElementsByTagName("info")
[0].childNodes[0].nodeValue;
var name = serviceTrips[i].getElementsByTagName
("serviceEngineer")[0].childNodes[0].nodeValue;
var html = "<h5>Navn:</h5>"+name+"<h5>Informasjon:</
h5>"+info
var marker = createMarker(point, html, "Beskrivelse av
oppdrag", "Zoom av site");
map.addOverlay(marker);
}
//Funksjon som lager en markør og legger til den rette
informasjonen på hver markør
}
function createMarker(point, html, label1, label2) {
var marker = new GMarker(point);
GEvent.addListener(marker, "mouseover", function() {
var tab1 = new GInfoWindowTab(label1, html);
var tab2 = new GInfoWindowTab(label2,'<div id="detailmap"</
div>');
var tabs = [tab1, tab2];
var opts = new Object();
opts.maxWidth = 500;
marker.openInfoWindowTabsHtml(tabs, opts);
var dMapDiv = document.getElementById("detailmap");
var detailMap = new GMap2(dMapDiv);
detailMap.setCenter(point , 8);
detailMap.addControl(new GSmallMapControl());
});
return marker;
}
}
request.send(null);
</script>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Google Maps API" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/Google-Maps-API?hl=en
-~----------~----~----~----~------~----~------~--~---