这适用于SVG动画专家:
我正在尝试使用<g>
读取我沿着路径设置动画的<animateMotion>
元素的属性。我的理解是animateMotion
将transform
应用于元素,而不是一次只更改一个属性(x,y,旋转等)。
根据我的说明,您可以使用相关属性的animVal
子属性访问Javascript中任何SVG属性的当前动画值。例如,element.cx.animVal.value
或element.cx.animVal.valueAsString
。
但对于转换,相应的属性为element.transform
,其类型为SVGAnimatedTransformList。变换的animVal
返回SVGTransformList。阅读该链接的规范,我应该可以从我的动画元素中获取这些属性:
element.transform.animVal.numberOfItems
应该返回变换列表中的项目数。但相反,它返回0
。
element.transform.animVal.getItem(0)
应返回转换列表中的第一个值。由于它显然是空的,因此在尝试访问此属性时出现错误。
那么,有没有人成功地使用这些属性和子属性来在动画期间读取值,是否已知它们有问题或不受支持,或者我做错了什么?
有关我的剧本的其他注意事项: