2014-02-05 58 views
2

This Fiddle顯示我正面臨的錯誤。它真的是一個錯誤還是我做錯了什麼?將Snap.animation傳遞給Element.animate時出現Snap.svg錯誤

在小提琴中,懸停兩個圓圈,白色的一個是正確的動畫,黑色的一個消失,一個無限循環開始在控制檯中拋出錯誤。

var animateCircleIn = Snap.animation({ 
    r: 15 
}, 400, mina.backout); 

var animateCircleOut = Snap.animation({ 
    r: 10 
}, 400, mina.easein); 

var paper = new Snap("svg"); 

// Bigger black circle that does not work, see the console 
var c2 = paper.circle(60, 60, 30); 
c2.hover(function() { 
    console.log(this.animate); 
    c2.animate(animateCircleIn); // Infinite loop of errors 
}); 

回答

3

我認爲它的你已經發現了一個錯誤,在源,它看起來像一個持續的看着「easing.dur」而不是「attr.dur」,你可以通過設置該證明這一點您對象...

animateCircleIn.easing.dur = 400; 
animateCircleOut.easing.dur = 400; 

它會工作。

突出顯示在fiddle這裏與它的工作。所以我認爲你將不得不像上面那樣做一個奇怪的解決方法,或者改變snap.svg.js源代碼來匹配。 (我會看看如果我可以得到更新github)

我想在snap.svg.js,ms = easing.dur;應該是ms = attrs.dur;除非我錯過了它的設置。

(GIT拉要求做,我覺得這是固定在0.4.1)

+0

,如果你想我會照顧的bug報告和拉請求,這將是我第一次也是一個容易。但是,因爲我們都完成了部分工作,所以我讓你決定是否要處理它 – Johnride

+0

謝謝,我早些時候做過這樣的事情(實際上我錯過了你剛剛想到的拉動請求)。奇怪的是這也是我的第一次嘗試! https://github.com/adobe-webplatform/Snap.svg/pull/180不知道如果我做對了,但:) – Ian

相關問題