从构建中停止fadeToggle()

时间:2011-01-19 07:11:47

标签: jquery

当我将鼠标悬停在我想要淡入淡出的次数上时,它会不断重复。即使我停止徘徊它。我怎么能阻止这个?

$(".featured").hover(function(){
    $(this).find("h3").fadeToggle(800);
   });

1 个答案:

答案 0 :(得分:7)

您需要致电.stop()

$(this).find("h3").stop(true, true).fadeToggle(800);

参数表示:clearQueue,jumpToEnd
这几乎会立即停止当前动画。要更顺畅地停止,您应该致电.stop(true, false)

我能想到的另一种方法是检查元素是否是动画的:

$(".featured").hover(function(){
    var $h3 = $(this).find('h3');

    if(!$h3.is(':animated') ) 
        $h3.fadeToggle(800);
});

参考:.stop():animated selector