infatti penso pure io ... qui ho il codice forse ti può servire ... praticamente prende le coordinate e le info da un file xml ... solo che non funziona molto bene nel senso che quando vado sopra con il mouse al marker mi si sposta la mappa .. cmq questo è il codice ..
Codice PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Irving City Parks</title>
<link type="text/css" rel="Stylesheet" media="screen" href="simpleExampleWindow.css"/>
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAU6cra27VLGdD-sVZVTbgMxTBNDlYHgSZaMoGwMxMHbZQt3p0axTKUFt-fLbIf0PIbgBFfxKm78AO3w"
type="text/javascript"></script>
<script src="extinfowindow.js" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
function load(){
var map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(42.228517,12.370605), 8);
//var point = new GPoint(12.370605,42.228517);
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.addControl(new GScaleControl());
//map.centerAndZoom(point, 8);
var baseIcon = new GIcon();
baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
baseIcon.iconSize = new GSize(20, 34);
baseIcon.shadowSize = new GSize(37, 34);
baseIcon.iconAnchor = new GPoint(9, 34);
baseIcon.infoWindowAnchor = new GPoint(9, 2);
//baseIcon.infoShadowAnchor = new GPoint(18, 25);
function createMarker(point,iconname,info) {
var icon = new GIcon(baseIcon);
icon.image = iconname.getAttribute("image");
var marker = new GMarker(point,icon);
//funzione al passaggio del mouse crea nuvoletta ------------------------------------------------------
GEvent.addListener(marker, "mouseover", function() {
//var fullname= info.getAttribute("fullname");
//var telefono= info.getAttribute("telefono");
//var indirizzo=info.getAttribute("indirizzo");
//var url=info.getAttribute("url");
//creo stringa da visualizzare nella nuvoletta --------------------------------------------------------
//var testoHTML=fullname+"
"+telefono+"
"+indirizzo+"
"+url+"
";
marker.openExtInfoWindow(
map,
"gdfgdfgdfgdf gdfgdfgdfg",
{beakOffset: 3});
});
//marker.openInfoWindowHtml(testoHTML); });
//quando il mouse va fuori sparisce nuvoletta ---------------------------------------------------------
GEvent.addListener(marker, "mouseout", function() {
//map.closeInfoWindow(); });
map.closeExtInfoWindow();
});
return marker;
}
var request = GXmlHttp.create();
request.open("GET", "parks.xml", true);
request.onreadystatechange = function() {
if (request.readyState == 4) {
var xmlDoc = request.responseXML;
var points = xmlDoc.documentElement.getElementsByTagName("point");
var icons = xmlDoc.documentElement.getElementsByTagName("icon");
var info = xmlDoc.documentElement.getElementsByTagName("info");
for (var i = 0; i < points.length; i++) {
var point = new GLatLng(parseFloat(points[i].getAttribute("lat")),
parseFloat(points[i].getAttribute("lng")));
var marker = createMarker(point,icons[i],info[i]);
map.addOverlay(marker);
}
}
}
request.send(null);
}
//]]>
</script>
</head>
<body onload="load()" onunload="GUnload()">
<div id="map" style="width: 800px; height:500px;"></div>
</body>
</html>
questo è il risulato (pietoso ...) http://www.hotelfree.it/api2/mappa2.htm i marker sono tutti personalizzabili tramite il file xml ... :master: