I'm trying to show an overlay div when '.menu' is hovered over. I've used hover to show the div (hidden first with CSS), the mouseleave to reset it. How can I do it so the mouse needs to be on the menu for a couple of seconds for it to show, so if its just rolled over quickly it doesnt do anything. I know I can do this with delay() but if i go over the button quickly 5 times, the screen flashes 5 times with the overlay. How can i make it only do it once and then terminate.
Thanks.
 $( document ).ready(function() {
        $(".menu").hover(function() {
            $(".page-overlay").delay(600).fadeIn(200);
        });
        $(".menu").mouseleave(function() { 
            $(".page-overlay").fadeOut(200); 
        });
});
 
     
    