0

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

我知道(认为) .stop() 是我的救星。它正确地停止了 div fadeTo 但是对于我的生活,我无法让 fadeIn 开始。

这是我所拥有的:

$(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/

4

1 回答 1

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);
    });
于 2013-02-25T11:22:38.773 回答