JQuery UI .effect() 和 .toggle():调用 start 函数,就像在 JQuery .anim



我正在使用动画,在我的网页上,有许多动画同时发生。我需要在某些动画开始时播放音频,并在某些动画结束时显示某些内容。

过去,我使用过 JQuery 的.animate(),它包含动画开始和结束的回调:

.animate({
//css here
}, {
start: function(){}, //called on start of animation
complete: function(){}, //called on end of animation
});

这真的很整洁和有用,并且像一个魅力一样工作,而无需调用具有相应动画持续时间的 setTimeouts。

但是现在我需要一些更高级的动画,JQuery UI效果已经令人满意,直到我需要再次使用启动回调:在JQuery UI .effect()API页面上,只有complete:回调存在。玩弄 JQuery UI 源代码,我发现它使用.animate()来做事,所以似乎可以对其进行一些更改并添加一个start:选项,但我不想弄乱源代码(除非它很简单并且不会造成一些损害),并且不想只用.animate()重新创建每个效果。

有没有办法在 JQuery 的 UI.effect().toggle()start:?还是我应该使用支持它的完全不同的 API?有什么建议吗?提前谢谢。

我发现 GSAP 的 TweenMax 在动画方面比 JQuery UI 好得多,并且可以完成我需要的一切:动画、事件、回调、时间线,一切。

链接: https://greensock.com/gsap

最新更新