2011-03-03 61 views
0

我在一个包含div中有一堆div。它们全部向左浮动,只有三个可见,容器的溢出设置为隐藏。我想让用户悬停包含div的左侧或右侧,并使内部div(幻灯片)左右动画,随着用户的鼠标靠近任一侧,动画的速度不断增加。在中间,没有运动,在两侧,快速运动。在jQuery中增加动画速度

现在,我可以调整速度,并看到它反映,如果我徘徊和关闭包含div,但我无法弄清楚如何改变“动画”过程中的速度。我并不是在谈论缓解问题,因为我希望用户能够将鼠标放回中心位置,并在此时让动画轻轻停下。

这里是我应得/设定速度PARAM:

var mouseX = e.pageX-$(this).offset().left,

  width = $(this).innerWidth(), 

      speed = Math.round((width-mouseX)*10); 

我然后设置动画正是如此:

$("#sliderCont").animate({"left":-1600},speed);

我使用变量 “速度” 的速度PARAM因为我使用的mouseover事件处理程序很快就会启动,所以我认为速度也会快速变化。但显然不是。

请任何帮助。 :)

P.S:此编辑器显示一行代码两次,“var mouseX”...:S它不是代码的一部分。

回答

0

也许你应该尝试mousemove事件。

+0

哎呀!错字,我实际上使用的是mousemove事件。 :P仍然无法正常工作。我现在可以改变动画速度,但是当一个功能结束而另一个功能开始时,它会变得不稳定。 :( – Tom 2011-03-04 19:51:52