我在使用jquery的動畫方法執行簡單的旋轉動畫時遇到了問題。我試圖以45度旋轉開始一個正方形,然後,當點擊一個按鈕時,將正方形再旋轉45度(以90度完成)。jquery動畫步驟的起始值不正確
但是,當我嘗試動畫時,在開始朝最終完成點(90度)前進之前,方塊先跳回到0的旋轉。
這似乎是因爲animate()的「step」選項的「now」參數從0開始,而不是從元素的實際起點45度開始。
我在做什麼錯在這裏有什麼想法嗎?
http://jsfiddle.net/agentfitz/btz89/2/
// css
.square {
transform: rotate(45deg); // starting point
}
// js
$(".square").animate(
{
rotation: 90,
},
{
step: function(now, tween) {
var $el = $(this);
if (tween.prop === "rotation") {
console.log(now);
$el.css('transform','rotate('+now+'deg)');
}
},
duration: 2000
}
);
做得很好,謝謝。 –