Foros del Web » Programando para Internet » Jquery »

Mantener formulario mostrado

Estas en el tema de Mantener formulario mostrado en el foro de Jquery en Foros del Web. Buenas, estoy intentando hacer un botón que al hacer click muestre un formulario de acceso, y al salir el ratón de ese formulario el formulario ...
  #1 (permalink)  
Antiguo 26/03/2016, 05:44
 
Fecha de Ingreso: septiembre-2014
Mensajes: 72
Antigüedad: 10 años, 3 meses
Puntos: 0
Mantener formulario mostrado

Buenas, estoy intentando hacer un botón que al hacer click muestre un formulario de acceso, y al salir el ratón de ese formulario el formulario vuelva a esconderse.

El problema que tengo es que aunque consigo que esto ocurra con el formulario, cuando el ratón se acerca a algún input o label, el formulario se oculta, entiendo que porque de alguna manera ha "abandonado" el form.

Dejo el código a ver si me podéis ayudar:

Código:
<form id="login">
	<label for="nombre">Nombre de usuario</label>
	<input type="text" id="nombre" placeholder="Nombre de usuario">
	<label for="contrasena">Contraseña</label>
	<input type="password" id="pass" placeholder="Contraseña">
	<input type="submit" value="Acceder">
</form>
Código:
$(document).ready(function(){
	$('#login').hide();

	$('#acceso').click(function(){
		$('#login').slideDown("slow");
	})

	$('#login').hover(function(){
		$('#login').show();
	})

	$('#login').mouseout(function(){
		$('#login').slideUp("slow");
	})

})
#acceso es el botón al que se hace click para mostrar el formulario.

¿Alguna solución?

Gracias y un saludo
  #2 (permalink)  
Antiguo 26/03/2016, 10:31
 
Fecha de Ingreso: enero-2015
Ubicación: Cordoba, Andalucía
Mensajes: 111
Antigüedad: 9 años, 11 meses
Puntos: 15
Respuesta: Mantener formulario mostrado

Juega con algo así:

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <head>
  3.         <script src="jquery-2.1.1.js"></script>
  4.         <style>
  5.             #prueba{padding:2em;background:#E5E5E5; min-width:100%; height:100px;}
  6.             #login{background:red; padding:5em;}
  7.         </style>
  8.     </head>
  9.     <body>
  10.         <div id="prueba">
  11.             <form id="login">
  12.                 <label for="nombre">Nombre de usuario</label>
  13.                 <input type="text" id="nombre" placeholder="Nombre de usuario">
  14.                 <label for="contrasena">Contraseña</label>
  15.                 <input type="password" id="pass" placeholder="Contraseña">
  16.                 <input type="submit" value="Acceder">
  17.             </form>
  18.             <button type="button" id="acceso">boton</button>
  19.         </div>
  20.  
  21.  
  22. $(document).ready(function(){
  23.     $('#login').hide();
  24.  
  25.     $('#acceso').click(function(){
  26.         $('#login').slideDown("slow");
  27.     })
  28.  
  29.     $('#login').hover(function(){
  30.         $('#login').show();
  31.     })
  32.  
  33.     $('#prueba').hover(function(){
  34.         $('#login').slideUp("slow");
  35.     })
  36.  
  37. })
  38.  
  39. </body>
  40. </html>
  #3 (permalink)  
Antiguo 03/04/2016, 05:55
 
Fecha de Ingreso: septiembre-2014
Mensajes: 72
Antigüedad: 10 años, 3 meses
Puntos: 0
Respuesta: Mantener formulario mostrado

Haciendolo así me pasa lo mismo, al pasar el raton por un campo del formulario o por algún botón la ventanita se oculta.

¿Alguna otra idea?

Gracias y un saludo.
  #4 (permalink)  
Antiguo 04/04/2016, 12:23
 
Fecha de Ingreso: enero-2014
Ubicación: Navarra
Mensajes: 94
Antigüedad: 10 años, 11 meses
Puntos: 18
Respuesta: Mantener formulario mostrado

Hola.

yo probaria con mouseleave en lugar de mouseout asi indicas que se oculte cuando se sale del la capa, no cuando este fuera de la capa.

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.     $('#login').hide();
  3.  
  4.     $('#acceso').click(function(){
  5.         $('#login').slideDown("slow");
  6.     })
  7.  
  8.     $('#login').hover(function(){
  9.         $('#login').show();
  10.     })
  11.  
  12.     $('#login').on("mouseleave",function(){
  13.         $('#login').slideUp("slow");
  14.     })
  15.  
  16. })

Saludos
  #5 (permalink)  
Antiguo 16/05/2016, 05:28
 
Fecha de Ingreso: septiembre-2014
Mensajes: 72
Antigüedad: 10 años, 3 meses
Puntos: 0
Respuesta: Mantener formulario mostrado

Así si funciona, es justo lo que quería.

Muchísimas gracias ;)

Etiquetas: formulario
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 09:10.