从构建中停止fadeToggle()

now*_*yyy 2 jquery

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

$(".featured").hover(function(){
    $(this).find("h3").fadeToggle(800);
   });
Run Code Online (Sandbox Code Playgroud)

jAn*_*ndy 7

你需要打电话 .stop()

$(this).find("h3").stop(true, true).fadeToggle(800);
Run Code Online (Sandbox Code Playgroud)

参数指示:clearQueue,jumpToEnd
这几乎会立即停止当前动画.要想更顺畅地停车,你应该打电话.stop(true, false)

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

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

    if(!$h3.is(':animated') ) 
        $h3.fadeToggle(800);
});
Run Code Online (Sandbox Code Playgroud)

参考:.stop() ,:动画选择