2011-11-26 24 views
-1

我想知道jQuery .animate()函數是如何工作的? - 計算和步進(跳躍多少)想了解Animate函數(計算和步進)

+0

您是否嘗試首先了解自己?如果你有,你在哪個部分遇到問題? –

+3

Google知道...檢查[this](http://blog.bigbinary.com/2010/01/25/how-animate-really-works-in-jquery-simple-animation-case-discussed.html)。 –

+0

@DidierG。 - 非常不錯的鏈接+1 – mprabhat

回答

2

當動畫開始時,會採用時間戳。然後每次觸發一個步驟(取決於瀏覽器和有多少東西正在進行),計算動畫開始以來已經過去了多少時間,並且從中計算進度。

例如,動畫開始於1322338364714​​,動畫應該持續5000ms。一旦步驟觸發進度的計算公式如下所示:

  1. 獲取當前時間,比如1322338366714.
  2. 正常化= 1322338366714 - 1322338364714​​ = 2000
  3. 進步是5000分之2000= 0.4 = 40%。所以一個從0px到100px被動畫的div可以獲得40px的高度。