将Fade合并到addClass jQuery中

我有这个简单的代码:

$('.featureItems li').hover(
       function(){ $(this).addClass('hover') },
       function(){ $(this).removeClass('hover') }
)

我如何结合淡入淡出效果,因此添加/删除类更加渐进?

我需要animate()吗?

谢谢

最佳答案
如果您还在使用jQuery UI,它会改进CSS添加/删除方法,以便它们接受第二个参数,该参数是设置CSS转换动画的延迟(以毫秒为单位).要将变化设置为半秒的动画,例如:

$('.featureItems li').hover(
   function(){ $(this).addClass('hover', 500) },
   function(){ $(this).removeClass('hover', 500) }
)

更新:

为了防止动画队列在快速悬停/输出序列期间卡住或不一致,您还可以在启动add / removeClass之前强制停止现有动画:

$('.featureItems li').hover(
   function(){ $(this).stop(true).addClass('hover', 500) },
   function(){ $(this).stop(true).removeClass('hover', 500) }
)

转载注明原文:将Fade合并到addClass jQuery中 - 代码日志