我尝试使用Set.animate()为Snap.js集(snap 0.5.1)设置动画。在手册中,我可以读到http://snapsvg.io/docs/#Set.animate:
// animate first element to radius 10, but second to radius 20 and in different time
set.animate([{r: 10}, 500, mina.easein], [{r: 20}, 1500, mina.easein]);在手册中,我可以将一组动画作为第一个参数进行传递,例如
Set.animate(arr)但这不管用。
如果我尝试
set.animate([{r: 10}, 500, mina.easein], [{r: 20}, 1500, mina.easein]);这个很好用。但如果我试着
var arr = [[{r: 10}, 500, mina.easein], [{r: 20}, 1500, mina.easein]];
set.animate(arr);将导致此错误
InvalidCharacterError: String contains an invalid character snap.svg.js:1000有人能帮我吗?谢谢。
发布于 2018-10-19 16:18:52
我不认为这是一个bug,这是一个事实,你正在传递一个数组的数组,而不是一个数组到参数中,这就是我之前在注释中提到的。
所以我认为这可能会起作用(因为它会将数组展开到参数列表中)…
set.animate.apply( set, arr );例如http://jsfiddle.net/3nmL6tz1/
https://stackoverflow.com/questions/52793921
复制相似问题