2012-08-31 52 views
1

我做既jQuery和CSS代码这里有两个悬停效果:如何使jQuery的悬停像CSS悬停?

http://jsfiddle.net/UFSvN/3/

有jQuery的悬停和CSS悬停之间的差异。 jquery悬停,如果你将鼠标移动到盒子上很短的时间并快速离开盒子,它将运行鼠标输入和鼠标离开动画,并且将完成它们,而鼠标不会在鼠标移到盒子后面,输入动画结尾...

但对于css悬停,如果您将鼠标悬停在该框上,悬停效果将运行鼠标离开动画,只要将鼠标悬停在该框上直到鼠标悬停在动画结尾/已完成!

我该如何让jQuery的悬停像CSS悬停?! 我不想让整个动画完全跑出来,当我将鼠标移到刚刚接近混战的第二个框上时!

回答

2

使用.stop()停止当前正在运行的动画。

实施例:http://jsfiddle.net/UFSvN/4/

在小提琴,我在 '真' 作为参数传递。这将清除动画队列。请阅读jQuery文档;还有很多其他很酷的东西可以告诉你如何去做,比如传递第二个参数来跳转到动画的结尾。

+0

谢谢,但如果我在我的代码中进行了一些更改,该怎么办?像这样: http://jsfiddle.net/UFSvN/9/ ​​ 然后.stop(真)不会为这种情况工作.. –

+0

@ Pay4m你在这种情况下期待它做什么...播放整个动画对我来说似乎是最自然的事情。 – verdesmarald

+0

将鼠标在jquery框上移动3次,然后快速离开。那么动画将连续运行3次..我不希望发生这种情况..所以我认为解决方案是允许动画,如果只有鼠标仍然在框中。当它结束时,停止动画序列。 –