salve a tutti, stavo cercando di creare una legenda da inserire dentro la mia mappa fatta con google maps, ma ho un po' le idee confuse.
mi sapreste dare qualche dritta???
salve a tutti, stavo cercando di creare una legenda da inserire dentro la mia mappa fatta con google maps, ma ho un po' le idee confuse.
mi sapreste dare qualche dritta???
pensavo di costruire un panel con dentro dei contenuti prestabiliti (simbolino a sx e a destra la descrizione). ma non so dove metter mano...
ora dovrebbe essere più potabile la spiegazione, spero!
Prova cosi: tu hai un div poniamo mappa a questo aggiungi due altri div al suo interno legenda e cartina, il primo lo imposterai con i css display:none e absolute con z-index alto (cosi che stia in primo piano) nel secondo caricherai i dati di google al richiamo o nella funzione di google o sapratamente imposti il div legenda su display:block (document.getElementById('legenda').style.display= 'block')![]()
Cavicchi Andrea
Problemi con javascript, jquery, ajax clicca qui
pardon, mi sta che sto facendo un po' di confusione...
io ho il codice che mi crea la mappa nell'head:
poi nel body faccio questo:codice:function initialize() { var latlgn = new google.maps.LatLng(45.5204572, 10.2145679); var myOptions = { zoom : 5, center : latlgn, mapTypeId: google.maps.MapTypeId.ROADMAP, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.DROPDOWN_MENU } } map = new google.maps.Map (document.getElementById("map_canvas"), myOptions);
però la legenda non me la visualizza dentro la cartina, ma sotto!codice:<body onload="initialize()"> <div id="map_canvas" style="width: 100%; height:100%;"></div> <div class="legenda"> <div class="riga"></img> <legend id="descrizioneVerde">verde</legend> </div> <div class="riga">
</img> <legend id="descrizioneBianco">bianco</legend> </div> <div class="riga">
</img> <legend id="descrizioneGiallo">giallo</legend> </div> <div class="riga">
</img> <legend id="descrizioneRosso">rosso</legend> </div> </div>
il css è questo:
sono nelle vostre mani!codice:body,div { font-family: Trebuchet MS, sans-serif; } .legenda{ width:300px; height:165px; border:2px solid grey; font-size: 13px; display:none; z-Index:999; } .legenda.riga{ } #simboloGiallo{ no-repeat center; } .marker .titolo { font-weight: bold; } .marker .corpo{ margin-left: 1em; }
dopo aver risolto in questo modo:
ora ho un altro problema: vorrei creare un bottone (delle stesse dimensioni di quelle del tipo di mappa) e al suo click vorrei che mi visualizzasse la legenda come una lista con un'ultima riga dove mettere "legenda on/off" dove:codice:var legenda = document.createElement("CLASS"); legenda.style.width='300px'; legenda.style.height='165px'; legenda.style.fontSize = '13px'; legenda.style.backgroundColor = 'white'; legenda.style.borderStyle = 'solid'; legenda.style.borderWidth = '2px'; legenda.style.borderColor='grey'; var rigaVerde = document.createElement("DIV"); var simboloVerde = document.createElement("IMG"); simboloVerde.setAttribute("src","http://www.google.com/mapfiles/marker_green.png"); var descrizioneVerde = document.createElement("TEXT"); descrizioneVerde.innerHTML = 'verde'; rigaVerde.appendChild(simboloVerde); rigaVerde.appendChild(descrizioneVerde); legenda.appendChild(rigaVerde); var rigaBianca = document.createElement("DIV"); var simboloBianco = document.createElement("IMG"); simboloBianco.setAttribute("src","http://www.google.com/mapfiles/marker_white.png"); var descrizioneBianco = document.createElement("TEXT"); descrizioneBianco.innerHTML = 'bianco'; rigaBianca.appendChild(simboloBianco); rigaBianca.appendChild(descrizioneBianco); legenda.appendChild(rigaBianca); var rigaGialla = document.createElement("DIV"); var simboloGiallo = document.createElement("IMG"); simboloGiallo.setAttribute("src","http://www.google.com/mapfiles/marker_yellow.png"); var descrizioneGiallo = document.createElement("TEXT"); descrizioneGiallo.innerHTML = 'giallo'; rigaGialla.appendChild(simboloGiallo); rigaGialla.appendChild(descrizioneGiallo); legenda.appendChild(rigaGialla); var rigaRossa = document.createElement("DIV"); var simboloRosso = document.createElement("IMG"); simboloRosso.setAttribute("src","http://www.google.com/mapfiles/marker.png"); var descrizioneRosso = document.createElement("TEXT"); descrizioneRosso.innerHTML = 'rosso'; rigaRossa.appendChild(simboloRosso); rigaRossa.appendChild(descrizioneRosso); legenda.appendChild(rigaRossa); legenda.index = 1; map.controls[google.maps.ControlPosition.TOP_RIGHT].push(legenda);
se la checkbox è spuntata, mi lascia in sovraimpressione la legenda, se invece non è selezionata, la legenda quando rifaccio click sul bottone, scompare.
una manina?