Ver Mensaje Individual
  #3 (permalink)  
Antiguo 12/10/2015, 11:57
felax92
 
Fecha de Ingreso: abril-2015
Ubicación: MEXICO
Mensajes: 15
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: ¿Ocultar mi formulario de búsqueda al hacer clic en cualquier otra parte?

Cita:
Iniciado por sintel_1 Ver Mensaje
hola

Para controlar la propagacion del evento puedes usar stopPropagation()
Tambien deberias de añadir una clase y eliminarla segun te interese.

Aqui tienes un ejemplo de lo que necesitas:

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.   <title>titulo</title>
  3. <script src="jquery-1.11.3.min.js"></script>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head>
  5. body {width:100%;height:100%;}
  6. .search {position:absolute;top:-10%;background-color:yellow;}
  7. #contenedor {background-color:silver;}
  8.    
  9. <script type="text/javascript">
  10. $(document).ready(function(){  
  11.   $('body').on('click', '.escucha' , function(){    
  12.     $('.search').animate({
  13.         top:'-10%'
  14.        });
  15.        $('#contenedor').removeClass('escucha');        
  16.        });      
  17.   $('.buscar').click(function(event){        
  18.       $('.search').animate({
  19.         top:'55'
  20.         });    
  21.        
  22.       $('#contenedor').addClass('escucha');
  23.       event.stopPropagation();
  24.   });
  25.  
  26.     $('.bar-search , .btn-search').click(function(event){
  27.        event.stopPropagation();
  28.        });
  29.  
  30. });//fin de ready
  31.          
  32. </head>
  33. <div id="contenedor">
  34.     <ul>
  35.   <li class="search-menu-full"><a href="javascript:;" class="buscar"><span class="icon-search">texto</a></li>
  36.   </ul>
  37.     <div class="search">
  38.     <form action="" method="GET">
  39.       <input type="text" name="name" placeholder="Buscar" class="bar-search">
  40.       <input type="button" name="buscar" value="Buscar" class="btn-search">
  41.     </form>  
  42.     </div>
  43.      <p>texto</p><p>texto</p><p>texto</p><p>texto</p><p>texto</p>
  44. </div>
  45. </body>
  46. </html>
Muchas gracias es exactamente lo que estaba buscando, ya lo implemente en mi cuadro de búsqueda y de paso en mi menú responsivo. Saludos