2012-01-25 58 views
0

對象我無法理解下面的代碼什麼是「一步」 jQuery中

  1. $(this).animate({rotate3Di: degrees}, options)。這裏rotate3Di是 不是css屬性來動畫。
  2. $.fx.step.rotate3Di = function(){}。在這裏,他們正在添加一個名爲rotate3Distep的方法 。什麼是stepfx。我確信 當我們向$.fn添加方法時,我們將能夠在jquery的結果集中訪問該方法 。但是通過添加一個方法到step,我們可以在哪裏訪問它呢?

得到這個插件從http://www.zachstronaut.com/projects/rotate3di/

回答

1

$.fx.step是包含由一次迭代遞增動畫功能的對象。
動畫在jQuery中的工作方式(大致)是在元素上調用$.animate()方法,並設置間隔/超時。然後每次超時/間隔觸發jQuery循環通過傳遞給.animate()的對象中的每個屬性,如果$.fx.step[propertyName]不存在,則調用默認增量函數(它稍微改變該css屬性)。但是,如果$.fx.step[propertyName]確實存在,那麼該函數會被調用。

您可以直接訪問方法$.fx.step.rotate3Di()(儘管假設您傳入預期參數,執行單個非動畫旋轉,但它沒有任何意義。它不是傳統意義上的jQuery插件,因此您不能撥打$(selector).rotate3di()