jquery:取消fadeto然后fadein

时间:2013-02-25 11:19:40

标签: jquery fadeto

我有一个最初显示的div,然后当鼠标离开div时,缓慢淡出(用淡入淡出)超过10秒。当鼠标重新进入时,我需要取消淡入淡出(如果它仍在进行中)并将div淡入。

我知道(想).stop()是我的救世主。它会正确地停止div fade但是对于我的生活我不能得到淡入淡出。

这就是我所拥有的:

$(document).on('mouseenter', '#player', function(){
        $(this).stop().fadeIn('fast');
    });

    $(document).on('mouseleave', '#player', function(){
        $(this).stop().fadeTo(10000,0.2);
    });

http://jsfiddle.net/FraserHart/SMQ4M/

1 个答案:

答案 0 :(得分:1)

我解决了。

我需要淡入fadeTo而不是fadeIn,因为当淡出fadeTo时,它只会调整不透明度,所以仍然将其视为可见:

$(document).on('mouseenter', '#player', function(){
        $(this).stop().fadeTo('fast',1);
    });

    $(document).on('mouseleave', '#player', function(){
        $(this).stop().fadeTo(10000,0.2);
    });