Javascript 使用一个通用缓解功能(GSAP)运行多个吐温
我可以组合多个tween并使用一个ease功能运行它们吗?大概是这样的:Javascript 使用一个通用缓解功能(GSAP)运行多个吐温,javascript,animation,timeline,gsap,Javascript,Animation,Timeline,Gsap,我可以组合多个tween并使用一个ease功能运行它们吗?大概是这样的: var el = $('#some-element'); var tw1 = new TweenMax.to(el, 1, {left: 100}); var tw2 = new TweenMax.to(el, 1, {left: 200}); var tw3 = new TweenMax.to(el, 1, {left: 300}); var tl = new TimelineMax({ease:Power2.eas
var el = $('#some-element');
var tw1 = new TweenMax.to(el, 1, {left: 100});
var tw2 = new TweenMax.to(el, 1, {left: 200});
var tw3 = new TweenMax.to(el, 1, {left: 300});
var tl = new TimelineMax({ease:Power2.easeOut})
.add(tw1)
.add(tw2)
.add(tw3);
我已经为这个问题制作了沙盒示例:那么,如何使移动框与普通的放松 UPD 新沙箱: 我们需要使用一个通用的缓和功能从第一个示例移动盒子,如第二个示例所示,但不删除中间的tween。仅使用一个tween(最终目的地),如果需要通过点,则使用BezierPlugin添加它们 ) 只使用一个tween(最终目的地),如果需要通过点,则使用BezierPlugin添加它们
) 一种方法是在时间线之间切换,如下所示:
var el = $('#some-element');
var tw1 = new TweenMax.to(el, 1, {left: 100});
var tw2 = new TweenMax.to(el, 1, {left: 200});
var tw3 = new TweenMax.to(el, 1, {left: 300});
var tl = new TimelineMax({ease:Power2.easeOut})
.add(tw1)
.add(tw2)
.add(tw3);
var el=$(“#某些元素”);
var tw1=新的TweenMax.to(el,1,{左:100});
var tw2=新的TweenMax.to(el,1,{左:200});
var tw3=新的TweenMax.to(el,1,{左:300});
var tl=新的TimelineMax()
.add(tw1)
.add(tw2)
.add(tw3);
TweenLite.to(tl,tl.duration,{progress:1,ease:Power2.easeOut});
还允许添加一个tween数组,然后将对齐作为字符串传递,如下所示:
var el = $('#some-element');
var tw1 = new TweenMax.to(el, 1, {left: 100});
var tw2 = new TweenMax.to(el, 1, {left: 200});
var tw3 = new TweenMax.to(el, 1, {left: 300});
var tl = new TimelineMax({ease:Power2.easeOut})
.add(tw1)
.add(tw2)
.add(tw3);
var el=$(“#某些元素”);
var tw1=新的TweenMax.to(el,1,{左:100});
var tw2=新的TweenMax.to(el,1,{左:200});
var tw3=新的TweenMax.to(el,1,{左:300});
var tl=新的TimelineMax()
.添加([tw1,tw2,tw3],“序列”);
就这样,阵型中的两个孩子一个接一个地玩
您还可以在时间轴的时间属性之间切换,如此代码笔中所示的Jamie Jefferson:
看看add()方法,它有着惊人的用途
罗德里戈
编辑:我忘了在add()方法中添加position参数。此方法接受一个位置参数和一个对齐参数,由于这两个参数都是字符串,因此必须同时包含这两个参数
代码如下所示:
var el = $('#some-element');
var tw1 = new TweenMax.to(el, 1, {left: 100});
var tw2 = new TweenMax.to(el, 1, {left: 200});
var tw3 = new TweenMax.to(el, 1, {left: 300});
var tl = new TimelineMax({ease:Power2.easeOut})
.add(tw1)
.add(tw2)
.add(tw3);
var el=$(“#某些元素”);
var tw1=新的TweenMax.to(el,1,{左:100});
var tw2=新的TweenMax.to(el,1,{左:200});
var tw3=新的TweenMax.to(el,1,{左:300});
var tl=新的TimelineMax()
.add([tw1,tw2,tw3],'+=0','sequence');
对于+=0,我们告诉GSAP在时间线的末尾按顺序包含所有这些元素。一种方法是在时间线之间,如下所示:
var el = $('#some-element');
var tw1 = new TweenMax.to(el, 1, {left: 100});
var tw2 = new TweenMax.to(el, 1, {left: 200});
var tw3 = new TweenMax.to(el, 1, {left: 300});
var tl = new TimelineMax({ease:Power2.easeOut})
.add(tw1)
.add(tw2)
.add(tw3);
var el=$(“#某些元素”);
var tw1=新的TweenMax.to(el,1,{左:100});
var tw2=新的TweenMax.to(el,1,{左:200});
var tw3=新的TweenMax.to(el,1,{左:300});
var tl=新的TimelineMax()
.add(tw1)
.add(tw2)
.add(tw3);
TweenLite.to(tl,tl.duration,{progress:1,ease:Power2.easeOut});
还允许添加一个tween数组,然后将对齐作为字符串传递,如下所示:
var el = $('#some-element');
var tw1 = new TweenMax.to(el, 1, {left: 100});
var tw2 = new TweenMax.to(el, 1, {left: 200});
var tw3 = new TweenMax.to(el, 1, {left: 300});
var tl = new TimelineMax({ease:Power2.easeOut})
.add(tw1)
.add(tw2)
.add(tw3);
var el=$(“#某些元素”);
var tw1=新的TweenMax.to(el,1,{左:100});
var tw2=新的TweenMax.to(el,1,{左:200});
var tw3=新的TweenMax.to(el,1,{左:300});
var tl=新的TimelineMax()
.添加([tw1,tw2,tw3],“序列”);
就这样,阵型中的两个孩子一个接一个地玩
您还可以在时间轴的时间属性之间切换,如此代码笔中所示的Jamie Jefferson:
看看add()方法,它有着惊人的用途
罗德里戈
编辑:我忘了在add()方法中添加position参数。此方法接受一个位置参数和一个对齐参数,由于这两个参数都是字符串,因此必须同时包含这两个参数
代码如下所示:
var el = $('#some-element');
var tw1 = new TweenMax.to(el, 1, {left: 100});
var tw2 = new TweenMax.to(el, 1, {left: 200});
var tw3 = new TweenMax.to(el, 1, {left: 300});
var tl = new TimelineMax({ease:Power2.easeOut})
.add(tw1)
.add(tw2)
.add(tw3);
var el=$(“#某些元素”);
var tw1=新的TweenMax.to(el,1,{左:100});
var tw2=新的TweenMax.to(el,1,{左:200});
var tw3=新的TweenMax.to(el,1,{左:300});
var tl=新的TimelineMax()
.add([tw1,tw2,tw3],'+=0','sequence');
对于+=0,我们告诉GSAP在时间线的末尾按顺序包含所有这些元素。我需要使用多个tween。假设我需要设置不同属性的动画,但是使用一个常见的ease函数。我需要将它们组合成一个tween,然后像假设的那样应用ease。我需要使用多个tween。假设我需要设置不同属性的动画,但是使用一个常见的ease函数。我需要把它们组合成一个tween,然后像假设的那样应用ease。对我来说,只有Jamie的Jefferson的解决方案有效。这支笔演示了一个只有1个tween的病例对照
div#a
与另一个有3个tween的div#B
是同步的:@abernier啊,是的,你是对的。我忘了添加position参数,因为position和alignment是字符串,所以很难按代码区分它们。我更改了代码,现在应该可以正常工作了。对我来说,只有杰米的杰斐逊解决方案有效。这支笔演示了一个只有1个tween的病例对照div#a
与另一个有3个tween的div#B
是同步的:@abernier啊,是的,你是对的。我忘了添加position参数,因为position和alignment是字符串,所以很难按代码区分它们。我更改了代码,现在应该可以正常工作了。