Foros del Web » Programando para Internet » Javascript »

como poner boton que centre el mapa + Gmap

Estas en el tema de como poner boton que centre el mapa + Gmap en el foro de Javascript en Foros del Web. Amigos, tiempo que no pasaba por este querido foro, necesito la ayuda de alguno que conozca de Gmap api V3. el problema es el siguiente ...
  #1 (permalink)  
Antiguo 03/10/2012, 15:14
Avatar de ACX_POISON  
Fecha de Ingreso: abril-2008
Ubicación: Talca-Chile
Mensajes: 750
Antigüedad: 16 años, 7 meses
Puntos: 7
Pregunta como poner boton que centre el mapa + Gmap

Amigos,

tiempo que no pasaba por este querido foro, necesito la ayuda de alguno que conozca de Gmap api V3.

el problema es el siguiente

1.-pretendo desplegar un mapa con una serie de marcadores de posicion en el. (ya esta listo)

2.- ademas necesito crear otro div fuera del mapa, que tenga un listado con los "titulos" de cada marcador.
la idea es que al hacer click a algun elemento de la lista el mapa "actual" se centre sobre la posicion de dicho marcador.

he probado con la funcion setcenter(), pero no lo he podido lograr
adjunto el codigo sobre el cual trabajo

mapa.php

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
    <
meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <
title>test</title>
    <
style>
    
#map {
    
position:absolute;
    
width:40%;
    
height:50%;
    
z-index:1;
    
left30%;
    
top102px;
}
    
#apDiv1 {
    
position:absolute;
    
width:200px;
    
height:45px;
    
z-index:2;
    
left83px;
    
top366px;
}
    </
style>
    <
script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&amp;language=es"></script>
    <script type="text/javascript" src="js/map.js"></script>
    <script language="javascript">
    function MAPAX(coordenadas)
    {
        //alert(coordenadas);
        /* var options = {
            zoom: 9
            , center: new google.maps.LatLng(-36.11,-70.66)
            , mapTypeId: google.maps.MapTypeId.ROADMAP
        }    ;*/
        map=google.maps.Map;
        //alert(map);
        map.setcenter(coordenadas);

    }
    </script>
</head>
<body>
    <div id="map"></div>
    <div id="apDiv1"><a href="#" onclick="MAPAX('-36.11,-70.66')">click</a></div>
</body>
</html> 
map.js

Código PHP:
// JavaScript Document
window.onload = function(){
    var 
popup;
    var 
n=1;
    var 
options = {
        
zoom3
        
center: new google.maps.LatLng(-35.429680,-71.661945)
        , 
mapTypeIdgoogle.maps.MapTypeId.ROADMAP
    
};
 
    var 
map = new google.maps.Map(document.getElementById('map'), options);
    var 
limits = new google.maps.LatLngBounds();
 
    var 
place = new Array();
    
place['punto 1'] = new google.maps.LatLng(-35.52,-71.66);
    
place['punto 2'] = new google.maps.LatLng(-35.42,-72.66);
    
place['punto 3'] = new google.maps.LatLng(-36.429680,-70.661945);
    
place['punto 4'] = new google.maps.LatLng(-34.429680,-71.68);
    
place['punto 5'] = new google.maps.LatLng(-33.429680,-72.661945);
    
place['punto 6'] = new google.maps.LatLng(-35.59,-72.61);
    
place['punto 7'] = new google.maps.LatLng(-36.97,-75.55);
    
place['punto 8'] = new google.maps.LatLng(-36.01,-72.11);
    
place['punto 9'] = new google.maps.LatLng(-36.11,-70.66);
    
     
    for(var 
i in place)
    {
        
html='<b>:D</b>';
        var 
marker = new google.maps.Marker({
            
positionplace[i]
            , 
mapmap
            
title':D'
            
icon'http://gmaps-samples.googlecode.com/svn/trunk/markers/red/marker' n++ + '.png'
        
});
         
google.maps.event.addListener(marker'click', function(){
            if(!
popup){
                
popup = new google.maps.InfoWindow();
            }
            var 
note html;
            
popup.setContent(note);
            
popup.open(mapthis);
        })
        
limits.extend(place[i]);
    }
    
map.fitBounds(limits);
}; 
agradeceria cualquier sugerencia...muchas gracias
__________________
Me junto con los que Saben, Queriendo Saber.
  #2 (permalink)  
Antiguo 03/10/2012, 15:28
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 5 meses
Puntos: 220
Respuesta: como poner boton que centre el mapa + Gmap

Para poder centrarlo debes usar la siguiente manera

Código Javascript:
Ver original
  1. // donde obtienes la latitud y longitud
  2. var b = new google.maps.LatLng(lat,lon);
  3. // map ya se encuentra definido y creado
  4. map.setZoom(17);
  5. // aqui es donde haces el centrado
  6. map.setCenter(b);
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #3 (permalink)  
Antiguo 04/10/2012, 06:21
Avatar de ACX_POISON  
Fecha de Ingreso: abril-2008
Ubicación: Talca-Chile
Mensajes: 750
Antigüedad: 16 años, 7 meses
Puntos: 7
Respuesta: como poner boton que centre el mapa + Gmap

gracias X responder Dradi7, pero aun tengo el problema, pues no me deja usar esas funciones dentro de la funcion MAPAX() que esta dentro de mapa.php.

esto lo necesito para que me centre el mapa en las coordenadas enviadas a la funcion MAPAX();
esta bien enfocado..? o hay alguna manera...??
__________________
Me junto con los que Saben, Queriendo Saber.
  #4 (permalink)  
Antiguo 04/10/2012, 08:16
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 5 meses
Puntos: 220
Respuesta: como poner boton que centre el mapa + Gmap

pero cual es el código de tu función MAPAX???
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #5 (permalink)  
Antiguo 08/10/2012, 06:39
Avatar de ACX_POISON  
Fecha de Ingreso: abril-2008
Ubicación: Talca-Chile
Mensajes: 750
Antigüedad: 16 años, 7 meses
Puntos: 7
Respuesta: como poner boton que centre el mapa + Gmap

en realidad ese es el problema la funcion MAPAX() esta en mapa.php
Código PHP:
Ver original
  1. <script language="javascript">
  2.     function MAPAX(coordenadas)
  3.     {
  4.         //alert(coordenadas);
  5.         /* var options = {
  6.             zoom: 9
  7.             , center: new google.maps.LatLng(-36.11,-70.66)
  8.             , mapTypeId: google.maps.MapTypeId.ROADMAP
  9.         }    ;*/
  10.         map=google.maps.Map;
  11.         //alert(map);
  12.         map.setcenter(coordenadas);
  13.  
  14.     }
  15.     </script>

pero esta evidentemente no me funciona
deberia ser algo asi

Código Javascript:
Ver original
  1. function MAPAX(la,lo)
  2. {
  3.   div=document.getElementById('mapa');
  4.    mapa=google.map.Map(div);
  5.   mapa.setCenter(la,lo);
  6. }

esto me da error al acceder a la funcion setCenter();
supongo que no estoy accediendo bien al objeto mapa y por eso no puedo usar la funcion para centrar el mapa ya existente...??
__________________
Me junto con los que Saben, Queriendo Saber.

Etiquetas: botones, gmap
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:25.