jquery悬停问题

时间:2010-06-12 12:15:37

标签: jquery mouseover mouseout

我有鼠标悬停问题,有时当我快速移动鼠标链接它循环很长一段时间,有没有办法只循环鼠标是stil over stil并停止,如果鼠标不是。

       $('ul.display li').hover(function() {

        $('ul.display li').find('#details').hide(); // hides all deatils div before showing
        $('#light').delay('800').fadeIn("fast"); // shows div that fades out all other content.

if($.cookie("switch_thumb") =="thumb_view" || $.cookie("switch_thumb") =="null"){//checks for cookie set for display type
      $(this).find('#details').delay('900').animate({width:'toggle'}); // grow width
}else{
      $(this).find('#details').delay('900').animate({height:'toggle'}); // grow height
}


      }, function() {

           $('#light').fadeOut("fast"); // dim the light to show all content
        $('ul.display li').find('#details').hide(); //hide all details
   return false; // supposed to stop looping.

      });

2 个答案:

答案 0 :(得分:0)

查看.stop()方法

答案 1 :(得分:0)

我曾遇到过类似的问题。 stop()也可以工作,但我做的是在开始淡入淡出时为元素添加一个类“inmotion”,并在淡入淡出完成时将其删除。通过在该标记打开时忽略任何悬停调用,它确保每个操作都必须在下一个操作开始之前完成。