我有這個動畫設置來指示哪個SVG
被選中。該動畫在svg:use
元素內添加了一個svg:use
元素,以及3個動畫元素或animateTransform
元素。感謝這裏的一些很棒的幫助,所以我能夠正常工作。動態SVG動畫只能工作一次
然而,我的新問題是動畫只能按設計一次工作。如果選擇第二個元素,則動畫似乎會嘗試進行,您可以看到筆畫寬度增加,但縮放不會發生。
我認爲這將是一個簡單的修復,通過使用setTimeout
調用一個函數並在動畫完成後刪除svg:use
。我沒那麼幸運。
我的問題的一個例子可以看這裏:http://codepen.io/JoeyCinAZ/pen/GHhbw
我寫信給刪除動畫功能是這裏
setTimeout(function() {removeAnimation(objID)}, 5000);
function removeAnimation(objID) {
var useEl = document.getElementById(objID);
useEl.nextSibling.remove();
}
您是否收到任何錯誤?另外,你應該刪除anony函數:'setTimeout(removeAnimation.bind(this,objID),5000);' – bencripps 2014-10-06 21:53:18
不,沒有錯誤被記錄。你是否說要用你評論中的匿名函數替換? – theFish 2014-10-06 22:01:24
是的,它只是乾淨利落地完成同樣的事情 – bencripps 2014-10-06 22:01:55