jQuery hover不会破坏$ .each循环

时间:2012-08-08 19:51:45

标签: jquery hover jquery-animate

我目前正在设置我的第一个网站动画,可在此处找到:http://jsfiddle.net/thevenin/zRLFX/4/

总结:我有五个递归动画的div,带有$ .each()函数来启动动画。如果将鼠标悬停在五个div中的任何一个上,动画应该会中断并且所有div都应该停止移动。取消div时,动画将以$ .each()函数重新启动。

我的问题是,当div到达内圆的对角轴时,hover()函数有时不会触发。如果将鼠标拖动到此位置的div上,鼠标将悬停在div上而不进行注册。 Firefox和Chrome都有这个问题。我该如何解决这个问题?

谢谢!

2 个答案:

答案 0 :(得分:2)

悬停要求您实际将鼠标移到悬停对象上。因为您的对象是动画的,如果您只是将鼠标固定在对象的路径中,则不会触发悬停。

我怀疑如果你将鼠标移向一个圆圈也会发生这种情况,但是在它到达圆圈之前停止鼠标,然后圆圈在它下面动画,而不是触发悬停。

为避免此行为,您可以轮询鼠标坐标以查看它们是否在任何给定时间的圆圈范围内。

答案 1 :(得分:2)

通过增加圆圈的z-index来解决它。我想早些时候,问题可能来自于div与其他所有z-index相同,这意味着你将无法选择它们。对实际推理不太确定,但至少它确实有效!