Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/04/2013, 12:48
franjgg
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 2 meses
Puntos: 4
Conflicto con div no muestra todo el mapa

Hola amigos vereis,

Tengo un panel que se oculta y se muestra pulsando un bonton funciona bien, dentro del panel tengo un mapa de google maps que tambien funiona el problema es que para que el panel aparezca oculta lleva en el css un display:none;

Entonces al pulsar el boton muestra el panel pero esto hace que elmapa no se veo completo solo un trozo, he probado a quitar el display:none; y se ve pero claro el panel se ve al entrar y debe estar oculto, dejo el codigo para que lo vean:

Código HTML:
Ver original
  1.         <link rel="stylesheet" type="text/css" href="agenda.css">
  2.         <title>Insertar nuevo contacto</title>
  3.                 <style>
  4.                 .div_oculto_direcciones_negocio{
  5.  
  6.     display:none;
  7.     display:block;
  8.     overflow:hidden;    
  9.  
  10. }
  11.                 </style>
  12.     <script type="text/javascript" src="C:/xampp/htdocs/dondelocompro/script/jquery_mostrar_panel.js"></script>
  13.         <script type="text/javascript">
  14.     $(document).ready(function() {
  15.     // Aquí va el resto del código que solo se ejecutará cuando la página haya cargado.
  16.     });
  17.     </script>
  18.  
  19.     <script type="text/javascript">
  20.     $(document).ready(function(){
  21.       $("#boton").click(function(){
  22.         $("#div1").fadeToggle(700);
  23.       });
  24.     });
  25.     </script>
  26.          <script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=false">
  27.         </script>
  28.             <script type="text/javascript">
  29.             var mapa;
  30.             var marcador;
  31.             var geocoder;            
  32.  
  33.             function inicializar(){    
  34.             geocoder = new google.maps.Geocoder();        
  35.             var myLatlng = new google.maps.LatLng(37.192869,-3.613186);
  36.             var mapOptions = {
  37.                   zoom: 16,
  38.                   center: myLatlng,
  39.                   mapTypeId: google.maps.MapTypeId.ROADMAP
  40.             }
  41.             mapa = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);    
  42.  
  43.             google.maps.event.addListener(mapa, 'click', function (event){
  44.                 creaMarcador(event.latLng)
  45.                 });
  46.  
  47.             }
  48.  
  49.             function creaMarcador(localizacion){                
  50.                 // Crear marcador
  51.                    if (marcador) marcador.setMap(null);                  
  52.                    marcador = new google.maps.Marker({
  53.                    position: localizacion,
  54.                    draggable: true,
  55.                    map: mapa
  56.                 });
  57.                 mapa.setCenter(localizacion);
  58.                  // Rellenar X e Y
  59.                 document.formulario.latitud.value=localizacion.lat();
  60.                 document.formulario.longitud.value=localizacion.lng();
  61.  
  62.                 // Modificar X e Y al mover
  63.                 google.maps.event.addListener(marcador,'drag',function(event){
  64.                     document.formulario.latitud.value=event.latLng.lat();
  65.                     document.formulario.longitud.value=event.latLng.lng();
  66.                     //mapa.setCenter(localizacion);
  67.                 });
  68.  
  69.             }
  70.  
  71.             function direc(){            
  72.             var dire = document.getElementById("direccion").value;            
  73.               geocoder.geocode( {'address': dire}, function(results, status) {
  74.             if (status == google.maps.GeocoderStatus.OK) {
  75.                   mapa.setCenter(results[0].geometry.location);
  76.                   creaMarcador(results[0].geometry.location);
  77.               }
  78.              else {
  79.                   alert("Geocode was not successful for the following reason: " + status);
  80.             }                
  81.             });
  82.  
  83.             }
  84.             </script>
  85.     </head>
  86.     <body onload="inicializar()">
  87.         <h1>Alta de Contacto:</h1>
  88.                                     <div id="div1" style="    display:none;    overflow:hidden">
  89.         <form action="save.php" method="post" name="formulario">
  90.                 <table>
  91.                 <tr><td>
  92.                
  93.  
  94.             Dirección: <input type="text" id="direccion" name="direccion" onchange="direc()"/>
  95.             <!--<input type="button" name="boton" value="Busca" onclick="direc()"/>--><br/><br/>
  96.  
  97.  
  98.  
  99.             <br/><br/>
  100.             <input type="submit" value="Guardar"/>
  101.             <input type="reset" value="Limpiar"/>
  102. </td><td>                      
  103.  
  104.  
  105.             X: <input type="text" name="latitud"/>
  106.             Y: <input type="text" name="longitud"/><br/><br/>
  107.             <div id="map_canvas" style="width:500px;height:500px">&nbsp;</div>                     
  108.                        
  109. </td></tr>                  </table>                   
  110.         </form>
  111.                 </div>
  112.                     <input id="boton" class="Boton_gris" style="margin:10px 0px 10px 0px;"  type="button" id="boton" name="enviar" value="Añadir dirección nueva"/>
  113.     </body>
  114. </html>


A ver si alguien sabe como sepodria solucionar esto.

Un saludo amigos