我是jquery的新手,我的fadeIn无效。我在这里做了JSFIDDLE。谢谢
$('#menu > li').on('mouseover', function(e){
$(this).find("ul:first").fadeIn(120).finish();
$(this).find('> a').addClass('active');
}).on('mouseout', function(e){
$(this).find("ul:first").stop().finish().delay(500).fadeOut(120);
$(this).find('> a').removeClass('active');
});
答案 0 :(得分:1)
删除.finish()
:
$('#menu > li').on('mouseover', function(e){
$(this).find("ul:first").fadeIn(120);
$(this).find('> a').addClass('active');
}).on('mouseout', function(e){
$(this).find("ul:first").stop().finish().delay(500).fadeOut(120);
$(this).find('> a').removeClass('active');
});
FIDDLE:https://jsfiddle.net/YGB5G/47/
来自jQuery site:
当在元素上调用.finish()时,当前运行的动画和所有排队的动画(如果有的话)会立即停止,并且其CSS属性设置为其目标值。所有排队的动画都将被删除。