0

我目前正在为我的第一个网站制作动画,在这里可以找到:http: //jsfiddle.net/thevenin/zRLFX/4/

摘要:我有五个递归动画的 div,带有一个 $.each() 函数来启动动画。如果您将鼠标悬停在五个 div 中的任何一个上,则动画应该会中断,并且所有 div 都应该停止移动。当您悬停 div 时,动画使用 $.each() 函数重新开始。

我的问题是,有时当 div 到达内部圆的对角轴时,hover() 函数不会触发。如果您在此位置将鼠标移动到 div 上,则鼠标将悬停在 div 上而不会被注册。Firefox 和 Chrome 都有这个问题。我怎样才能解决这个问题?

谢谢!

4

2 回答 2

2

悬停需要您将鼠标实际移动到悬停的对象上。因为您的对象是动画的,所以如果您只是将鼠标保持在对象的路径中,悬停将不会触发。

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

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

于 2012-08-08T19:58:11.053 回答
2

通过增加圆圈的 z-index 来解决它。我之前猜想,问题可能是由于 div 与其他所有内容的 z-index 相同,这意味着您将无法选择它们。不太确定实际推理,但至少它有效!

于 2012-08-08T21:16:29.773 回答