当鼠标快速移动时,不会触发jQuery mouseleave功能

我有一个带有小针脚的时间线,当它悬停在上面时,向上或向下滑动然后显示一个标题.当鼠标离开时,标题应该消失并且引脚向后移动.这可行,但使用我正在使用的代码,如果鼠标移动太快,它不会检测到鼠标离开.我怎样才能解决这个问题?

P.S,我使用鼠标进入/离开的唯一原因是因为我认为我需要使用live(),因为我的元素是在文档加载后动态添加的.

$('#about-me .progress-bar .progress .notes li.personal').live('mouseenter',function(){
    $(this).animate({
        top:25
    }, 200, function(){
        $(this).find('.caption').stop(true, true).fadeIn(200);
    });     
}).live('mouseleave',function(){
    $(this).find('.caption').stop(true, true).delay(200).fadeOut(200,function(){
        $(this).parents('li').animate({
            top:30
        },200);         
    });
});
编辑

好的新计划!

试试这个:

$('#about-me .progress-bar .progress .notes li.personal').live('mouseenter',function(){
    $(this).animate({
        top:25
    }, 200, function(){
        $(this).find('.caption').stop(true, true).fadeIn(200);
    });     
}).live('mouseleave',function(){
    $(this).stop(true, true).find('.caption').stop(true, true).delay(200).fadeOut(200,function(){
        $(this).parents('li').animate({
            top:30
        },200);         
    });
});

我没有点击你在两个单独的对象上运行动画!对这一个感到更自信!

相关文章
相关标签/搜索