2011-03-03 59 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