Salve a tutti.
Sono alle prese con le API di GoogleMaps.
Dopo aver risolto con il recupero coordinate da DB, mi scontro ora con un problemino con le info bubble di Google Maps.
In pratica, usando il normale script per il recupero dlele informazioni per un marker, tutto fila:
Codice PHP:
GDownloadUrl("phpsqlajax_genxml.php", function(data) {
var xml = GXml.parse(data);
var markers = xml.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var name = markers[i].getAttribute("name");
var address = markers[i].getAttribute("address");
var comune = markers[i].getAttribute("comune");
var type = markers[i].getAttribute("type");
var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
parseFloat(markers[i].getAttribute("lng")));
var marker = createMarker(point, name, address, comune, type);
map.addOverlay(marker);
function createMarker(point, name, address, comune, type) {
var marker = new GMarker(point, customIcons[type]);
var html = "[b]" + name + "[/b]
" + address + "
" + comune + "
";
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});
return marker;
Girando per il web ho visto che è possibile avere due o più tabs per questa info bubble.
Ho usato questo:
Codice PHP:
GDownloadUrl("xml.php", function(data) {
var xml = GXml.parse(data);
var markers = xml.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var name = markers[i].getAttribute("name");
var address = markers[i].getAttribute("address");
var comune = markers[i].getAttribute("comune");
var type = markers[i].getAttribute("type");
var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
parseFloat(markers[i].getAttribute("lng")));
var marker = createTabbedMarker(point, name, address, comune, type, "Prodotti", "Aziende");
map.addOverlay(marker);
function createTabbedMarker(point,html1,html2,label1,label2) {
var marker = new GMarker(point, , customIcons[type]);
var html1 = "[b]" + name + "[/b]
" + address + "
" + comune + "
";
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowTabsHtml([new GInfoWindowTab(label1,html2), new GInfoWindowTab(label2,html2)]);
});
return marker;
ma non carica nulla: pagina bianca.
Perdonate l'ignoranza.
Grazie a tutti