jQuery delay doesn't work as expected

Posted by Chris on Stack Overflow See other posts from Stack Overflow or by Chris
Published on 2010-05-19T14:42:22Z Indexed on 2010/05/19 14:50 UTC
Read the original article Hit count: 178

Filed under:
|
|
|

I have the following jQuery code

$("#dropdown").hover(function() { 
        $(this).stop(true,true).fadeTo('fast',1);
        $("#options").stop(true,true).slideDown();
    }, function() { 
        $(this).delay(1000).stop(true,true).fadeTo('fast',0.1);
        $("#options").delay(1000).stop(true,true).slideUp();
    }
);

What I expect to happen is when the mouse leaves #dropdown it will wait 1 second before continuing. This is not happening.

What I am trying to achieve, in case there is a better way, is to leave the drop down menu visible for a second or two after moving your mouse and I would also like to prevent the events from happening again to prevent artifacts and "funnies" if you were to move the mouse over and out from the div very quickly

© Stack Overflow or respective owner

Related posts about jQuery

Related posts about delay