将 Anime JS 与 Fabric Js 对象一起使用
Using AnimeJS with FabricJS's objects
感谢您在我之前的 post 中提供的所有帮助。
我有一个问题,是否可以在 FabricJS 对象上使用 AnimeJS?
我的意思是,我有一个带有 Canvas (FabricJS) 的 AngularJS 应用程序,我可以在这个 canvas 中创建对象。 FabricJS 动画不如 AnimeJS 强大,所以我需要使用它。
我已经尝试通过获取对象并在 AnimeJS 的 "targets" 参数中使用来与对象进行交互。如果我的目标是 dom 类型(如 div)、class 甚至 id,我可以确认 AnimeJS 在 AngularJS 应用程序中运行良好。
var bounce = anime({
targets: object.get(),
translateY: '50vh',
duration: object.get().animation.duration * 1000,
loop: true,
direction: 'alternate',
easing: 'easeInCubic',
autoplay: true
});
反弹对象中正确引用了该对象,但没有任何动画。你有好主意吗 ?是因为目标分配不正确吗?谢谢
我找到了一种方法,不使用 animejs 库。
AnimeJS 库使用 DOM 元素,FabricJS 元素不是 DOM。
所以,现在我使用 GSAP 库。真的好用。
如果您对织物对象属性进行操作,则可以将 anime.js 与织物一起使用,例如
const [obj1] = canvas.getObjects();
anime({
targets: [obj1],
left: [-300, 300],
easing: 'linear',
update: function() {
canvas.renderAll()
}
});
请注意 left
是一种面料 属性。而您尝试使用的 translateY
是 CSS 属性.
感谢您在我之前的 post 中提供的所有帮助。 我有一个问题,是否可以在 FabricJS 对象上使用 AnimeJS? 我的意思是,我有一个带有 Canvas (FabricJS) 的 AngularJS 应用程序,我可以在这个 canvas 中创建对象。 FabricJS 动画不如 AnimeJS 强大,所以我需要使用它。
我已经尝试通过获取对象并在 AnimeJS 的 "targets" 参数中使用来与对象进行交互。如果我的目标是 dom 类型(如 div)、class 甚至 id,我可以确认 AnimeJS 在 AngularJS 应用程序中运行良好。
var bounce = anime({
targets: object.get(),
translateY: '50vh',
duration: object.get().animation.duration * 1000,
loop: true,
direction: 'alternate',
easing: 'easeInCubic',
autoplay: true
});
反弹对象中正确引用了该对象,但没有任何动画。你有好主意吗 ?是因为目标分配不正确吗?谢谢
我找到了一种方法,不使用 animejs 库。 AnimeJS 库使用 DOM 元素,FabricJS 元素不是 DOM。 所以,现在我使用 GSAP 库。真的好用。
如果您对织物对象属性进行操作,则可以将 anime.js 与织物一起使用,例如
const [obj1] = canvas.getObjects();
anime({
targets: [obj1],
left: [-300, 300],
easing: 'linear',
update: function() {
canvas.renderAll()
}
});
请注意 left
是一种面料 属性。而您尝试使用的 translateY
是 CSS 属性.