SVG元素的animVal和baseVal何时不同.什么时候使用它们获得正确的值.逐字差异可以基于
here读取,但我更关心所有这些值可能不同.任何转换或缩放会影响吗?
在SO here形成另一个职位
function rectCorner(rect){ pt.x = rect.x.animVal.value + rect.width.animVal.value; pt.y = rect.y.animVal.value + rect.height.animVal.value; return pt.matrixTransform(rect.getTransformToElement(svg)); }
在这里使用animVal的理由是什么?
谢谢,
BSR.
解决方法
这些属性仅在使用
SVG Animation Elements< animate>,< set>,< animateColor>,< animateTransform>或< animateMotion> ;.如您所提供的链接所述,如果没有应用显式动画,则baseVal和animVal将是相同的. 在上面使用animVal的理由是它在大多数情况下将与baseVal相同,但是在动画应用和运行的机会不大的情况下,它将代表属性的当前值,而不是在过去.