我正在寻找一个涉及Snap SVG的函数,它允许我传入一个对象或值数组,通过它我可以迭代来构建动画属性。
例如,如果我可以通过: [transform:'t100,100',transform:'r10,10,10']
进入这个:
animateElementWithSnap: function(element, parentSVG, animationValues, duration, easing) {
var s = Snap.select("#"+ parentSVG),
theElement = s.select("#"+ element);
theElement.animate({
// Iterate over Object.keys(animationValues)
transform: 't100,100',
transform: 'r10,10,10'
}, duration, easing);
}
答案 0 :(得分:3)
您不需要迭代一系列属性。您实际上可以将animationValues创建为对象。
鉴于您设置了这样的值:
var animationValues = {
transform: 't100,100',
transform: 'r10,10,10'
};
然后你可以像这样改变你的动画电话:
animateElementWithSnap: function(element, parentSVG, animationValues, duration, easing) {
var s = Snap.select("#"+ parentSVG),
theElement = s.select("#"+ element);
theElement.animate(animationValues, duration, easing);
};