Visualizzazione risultati 1 fino 6 di 6

Discussione: [Google Maps Apis] Aprire automaticamente un marker

  1. #1
    Guest

    Predefinito [Google Maps Apis] Aprire automaticamente un marker

    Ciao a tutti!

    Ho questo codice qui:
    Codice HTML:
       <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=[CODICE API]"
    	  type="text/javascript"></script>
    	<script type="text/javascript">
    	function load() {
    	  if (GBrowserIsCompatible()) {
    		var map = new GMap2(document.getElementById("map"));
    		map.setCenter(new GLatLng(45.031007, 6.832745), 18);
    		map.addControl(new GSmallMapControl());
    		map.setMapType(G_MAP_TYPE);
    		function createMarker(point, description) {
    		  var marker = new GMarker(point);
    		  GEvent.addListener(marker, "click", function() {
    			marker.openInfoWindowHtml(description);
    		  });
    		  return marker;
    		}
    		map.addOverlay(
    			createMarker(new GLatLng(45.031007, 6.832745), 'Testo Marker')
    		);
    	  }
    	}
    </script>
    più l'onload al body e il div della mappa. Come potete vedere ho inserito un marker al centro della mappa.

    La documentazione ufficiale è qui: http://www.google.com/apis/maps/documentation/

    Come posso fare per far si che quando carica la mappa venga visualizzato automaticamente il marker senza dover cliccare sul pallino rosso?

    Grazie

  2. #2
    L'avatar di phpone
    phpone non è connesso AlterGuru
    Data registrazione
    05-09-2005
    Residenza
    Roma
    Messaggi
    1,217

    Predefinito

    questo mi apre il box al centro della mappa
    Codice HTML:
    var mexhtml = "testo del box";
    	map.openInfoWindowHtml(map.getCenterLatLng(), mexhtml);
    ti riporto il mio script completo
    Codice HTML:
    <script type="text/javascript">
        //<![CDATA[
    
    	var icon = new GIcon();
    	icon.image = "/modules/Googlemaps/images/mm_20_red.png";
    	icon.shadow = "/modules/Googlemaps/images/mm_20_shadow.png";
    	icon.iconSize = new GSize(12, 20);
    	icon.shadowSize = new GSize(22, 20);
    	icon.iconAnchor = new GPoint(6, 20);
    	icon.infoWindowAnchor = new GPoint(5, 1);
    
    function createmarker(point, html) {
    	var marker = new GMarker(point, icon);
    	GEvent.addListener(marker, "click", function() {
    	marker.openInfoWindowHtml(html);
            });
    
    	return marker;
    }
    
    function onload() {
    
    	var mapSpecs = [];
    		createMapSpecs();
    		mapSpecs.push(_GOOGLE_MAP_TYPE);
    		mapSpecs.push(_SATELLITE_TYPE);
    		mapSpecs.push(_HYBRID_TYPE);
    
    	var map = new GMap(document.getElementById("map"),mapSpecs);
    // Le coordinate di questo GPoint centrano la vostra mappa; il valore successivo ne determina lo zoom
    // Cercate una locazione a vostro piacimento ed utilizzatela come centro mappa
    		map.centerAndZoom(new GPoint(12.496, 41.893), 3);
    		map.addControl(new GLargeMapControl());
    		map.addControl(new GMapTypeControl());
    		map.addControl(new GScaleControl());
    		map.setMapType( _SATELLITE_TYPE );
    
    // apre il ballon con il messaggio di benvenuto che potete personalizzare
    	var mexhtml = "Benvenuti su mappe online<br>by PhpOne WebSite<br> Powered by Googlemaps<br> Scorrete la mappa trascinandola<br> con il mouse o utilizzate il<br> navigatore in alto a sinistra.<br>";
    	map.openInfoWindowHtml(map.getCenterLatLng(), mexhtml);
    
    	GEvent.addListener(map, "moveend", function() {
    	  var center = map.getCenterLatLng();
    	  var latLngStr = '(' + center.y + ', ' + center.x + ')';
    	  document.getElementById("message").innerHTML = latLngStr;
    	});
    
    	var request = GXmlHttp.create();
    	request.open("GET", "/modules/Googlemaps/mieimarkers.xml", true);
          request.onreadystatechange = function() {
            if (request.readyState == 4) {
              var xmlDoc = request.responseXML;
              var markers = xmlDoc.documentElement.getElementsByTagName("marker");
              for (var i = 0; i < markers.length; i++) {
                    var point = new GPoint(parseFloat(markers[i].getAttribute("lng")), parseFloat(markers[i].getAttribute("lat")));
    		var html = markers[i].getAttribute("html");
    		var marker = createmarker(point,html);
    		map.addOverlay(marker);
    	    }
    	  }
    	}
    	request.send(null);
    }
        //]]>
          </script>
    con questa mi apre il box al centro della mappa (che specifico prima)
    Ultima modifica di phpone : 23-10-2006 alle ore 14.17.38

  3. #3
    Guest

    Predefinito

    Non riesco a far aprire il box..

    Ho messo
    Codice:
    var mexhtml = "testo del box";
    map.openInfoWindowHtml(map.getCenterLatLng(), mexhtml);
    ma non si vede nemmeno il gocciolino rosso...

    E' possibile sostituire magari
    Codice:
    GEvent.addListener(marker, "click", function() {
    con una specie di onload??

  4. #4
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Ma il tuo codice API l'hai inserito?
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  5. #5
    L'avatar di phpone
    phpone non è connesso AlterGuru
    Data registrazione
    05-09-2005
    Residenza
    Roma
    Messaggi
    1,217

    Predefinito

    certo che l'ha inserito :blink:
    altrimenti nemmeno la mappa vedeva
    lui non riesce solo a far aprire il box... e mi chiedo il perche'!

  6. #6
    Guest

    Predefinito

    Si.. la mappa la vedo e vedo anche la gocciolina rossa. Quello che volevo è che il box si aprisse automaticamente senza dover cliccare sopra...

    Potrei anche postare un link di esempio, ma il sito in questione è fuori da AV..

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •