Foros del Web » Programando para Internet » Jquery »

Control de ejecución de eventos en jquery

Estas en el tema de Control de ejecución de eventos en jquery en el foro de Jquery en Foros del Web. Hola amigos recientemente estoy creando un script en el que una capa se mueve hacia abajo al pasar el mouse por otra capa y vuelve ...
  #1 (permalink)  
Antiguo 02/09/2011, 19:29
 
Fecha de Ingreso: enero-2010
Mensajes: 389
Antigüedad: 14 años, 11 meses
Puntos: 4
Control de ejecución de eventos en jquery

Hola amigos

recientemente estoy creando un script en el que una capa se mueve hacia abajo al pasar el mouse por otra capa y vuelve a su posición original al quitar el mouse.

Bien, si se pasa el mouse rapidamente varias veces sobre la capa que activa a la capa que se moverá, esta se mueve las veces que se ha cumplido los estados de mouseover o mouseout y queda algo mareoso. Lo ideal sería que no empezará a moverse hasta que no haya terminado de realizar el moviemiento y se tenga de nuevo el evento onmouseover.

Se que se puede porque algunos plugins de jquery como el kwicks lo hacen correctamente lo que explico.

Pongo un ejemplo y haber si sabeis que hay que hacer en el js:
Código PHP:
<html>
<
head>
    <
script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js" type="text/javascript"></script>
    <script type="text/javascript">
    <!--
        $(document).ready(function() {
            $('#capa-uno').mouseover(function(){
                $("#capa-dos").animate({
                    width: "500px"
                }, 1000);
            });
            $('#capa-uno').mouseout(function(){
                $("#capa-dos").animate({
                    width: "250px"
                }, 600);
            });
            
        });
    //-->
    </script>
</head>
<body>

    <div id="capa-uno" style="width:250px;height:100px;background:#F00;">
    </div>
    
    <div id="capa-dos" style="width:250px;height:100px;background:#000;">
    </div>
    
</body>
</html> 
Si pasais varias veces el mouse por encima y fuera de la capa roja vereis como la capa negra se lleva un rato moviendose, eso es lo quiero controlar. A ver si sabeis algo del tema

Saludos.
  #2 (permalink)  
Antiguo 03/09/2011, 21:12
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 9 meses
Puntos: 192
Respuesta: Control de ejecución de eventos en jquery

Tenés que detener la animación que se está ejecutando antes de ejecutar otra. Hacé eso en las dos animaciones:

Código Javascript:
Ver original
  1. $("#capa-dos").stop().animate(...)
__________________
nahueljose.com.ar

Etiquetas: control, eventos, html, javascript, js
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 22:17.