DirectionalRotationPlugin文档
优质
小牛编辑
126浏览
2023-12-01
TweenMax包含了DirectionalRotationPlugin。
将任何与rotation(旋转)相关的属性补间到特定方向上的另一个值,可以是顺时针("_cw"后缀),逆时"_ccw"后缀),也可以是最短方向("_short"后缀),在这种情况下,插件会根据你的最短路径为你选择方向。
var obj = {rotation:45};
//顺时针方向动画到270位置
TweenLite.to(obj, 1, {directionalRotation:"270_cw"});
//逆时针方向动画到270位置(-90度,看下面DEMO)
TweenLite.to(obj, 1, {directionalRotation:"270_ccw"});
//最短距离(在这里是逆时针)
TweenLite.to(obj, 1, {directionalRotation:"270_short"});
您还可以使用 "+="
或 "-="
前缀来指示相对值。
默认情况下,directionalRotation假定你正在尝试补间目标的"rotation"属性,但你可以通过传递对象来定义任何旋转属性名称(包括多重属性),如下所示:
//动画obj.rotationX和obj.rotationY
TweenLite.to(obj, 1, {directionalRotation:{rotationX:"-140_cw", rotationY:"70_short"}, ease:Power2.easeIn});
DirectionalRotationPlugin的功能内置于CSSPlugin中,因此如果你只想补间DOM元素的css相关属性,则无需单独加载DirectionalRotationPlugin插件。
从45反方向(ccw)补间到270(-90)
var header = document.querySelector("h1");
var obj = {rotation:45};
TweenLite.to(obj, 5, {directionalRotation:"270_ccw", roundProps:"directionalRotation", onUpdate:function() {
header.innerHTML = obj.rotation;
}});
重播