Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/06/2013, 13:19
Avatar de catpaw
catpaw
 
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años
Puntos: 23
Respuesta: Abrir infoWindow en Google Maps

hola, yo tengo problemas tambien

Hace mucho tiempo trabaje con esta API y no recuerdo que haya sido tan engorroso poner el globo de informacion de un marcador...:/


Mi problema es que no he encontrado como abrir mi contenido (como una imagen y una descripcion) en un "globo" de informacion como el sale normalmente al dar clic en algun marcador del mapa.

Para poder abrir algo con mi propio contenido tuve que bajar un archivo aparte (infobox.js) que me da chance de personalizar el div donde se abre la informacion del marcador.

Pero lo que quisiera es hacerlo en el "globo" normal que usa google maps.

De todos modos te dejo mi codigo, que al menos si funciona bien, sale el globo de informacion de primera hora como dices, y al cerrarlo lo puedes abrir al dar clic al marcador, espero te funcione.

Si alguien conoce una forma mas facil y sin tener que agregar archivos aparte, se los agradeceria.

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     var myLatlng = new google.maps.LatLng(#,-#);
  3.     var marker;
  4.     var map;
  5.     var image = '../images_icon/tip.png';
  6.    
  7.     function initialize(){  
  8.         var mapOptions = {
  9.             zoom: 15,
  10.             center: myLatlng,
  11.             mapTypeId: google.maps.MapTypeId.ROADMAP
  12.         };
  13.         map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
  14.        
  15.         var marker = new google.maps.Marker({      
  16.             map: map,
  17.             draggable: false,
  18.             animation: google.maps.Animation.DROP,  
  19.             position: myLatlng,
  20.             icon: image,
  21.             title: "Hello World!"  
  22.         });
  23.        
  24.         var boxText = document.createElement("div");
  25.         boxText.style.cssText = "border: 1px solid black; margin-top: 8px; background: white; padding: 5px;";
  26.         boxText.innerHTML = "Direccion imagen";
  27.        
  28.         var myOptions = {
  29.             content: boxText,
  30.             disableAutoPan: false,
  31.             maxWidth: 0,
  32.             pixelOffset: new google.maps.Size(-140, 0),
  33.             zIndex: null,
  34.             boxStyle: {
  35.                 //background: "url('tipbox.gif') no-repeat",
  36.                 opacity: 0.75,
  37.                 width: "280px"
  38.             },
  39.             closeBoxMargin: "10px 2px 2px 2px",
  40.             closeBoxURL: "../images_icon/cancel.png",
  41.             infoBoxClearance: new google.maps.Size(1, 1),
  42.             isHidden: false,
  43.             pane: "floatPane",
  44.             enableEventPropagation: false
  45.         };
  46.         var ib = new InfoBox(myOptions);
  47.         ib.open(map, marker);
  48.    
  49.         google.maps.event.addListener(marker, 'click', function(){
  50.             ib.open(map, marker);
  51.         });
  52.     }
  53.    
  54.     google.maps.event.addDomListener(window, 'load', initialize);
  55. </script>

Última edición por catpaw; 27/06/2013 a las 13:25