动画

qq.createAnimation

Animation qq.createAnimation(Object object)

创建一个动画实例 animation。调用实例的方法来描述动画。最后通过动画实例的 export 方法导出动画数据传递给组件的 animation 属性。

参数

Object object
属性类型默认值必填说明
durationnumber400动画持续时间,单位 ms
timingFunctionstring'linear'动画的效果
delaynumber0动画延迟时间,单位 ms
transformOriginstring'50% 50% 0'

timingFunction 的合法值

说明
'linear'动画从头到尾的速度是相同的
'ease'动画以低速开始,然后加快,在结束前变慢
'ease-in'动画以低速开始
'ease-in-out'动画以低速开始和结束
'ease-out'动画以低速结束
'step-start'动画第一帧就跳至结束状态直到结束
'step-end'动画一直保持开始状态,最后一帧跳到结束状态

返回值

Animation

Animation

动画对象

方法

Array.<Object> Animation.export()

导出动画队列。export 方法每次调用后会清掉之前的动画操作。

Animation Animation.step(Object object)

表示一组动画完成。可以在一组动画中调用任意多个动画方法,一组动画中的所有动画会同时开始,一组动画完成后才会进行下一组动画。

Animation Animation.matrix()

transform-function matrix动画 - 图1

Animation Animation.matrix3d()

transform-function matrix3d动画 - 图2

Animation Animation.rotate(number angle)

从原点顺时针旋转一个角度

Animation Animation.rotate3d(number x, number y, number z, number angle)

从 X 轴顺时针旋转一个角度

Animation Animation.rotateX(number angle)

从 X 轴顺时针旋转一个角度

Animation Animation.rotateY(number angle)

从 Y 轴顺时针旋转一个角度

Animation Animation.rotateZ(number angle)

从 Z 轴顺时针旋转一个角度

Animation Animation.scale(number sx, number sy)

缩放

Animation Animation.scale3d(number sx, number sy, number sz)

缩放

Animation Animation.scaleX(number scale)

缩放 X 轴

Animation Animation.scaleY(number scale)

缩放 Y 轴

Animation Animation.scaleZ(number scale)

缩放 Z 轴

Animation Animation.skew(number ax, number ay)

对 X、Y 轴坐标进行倾斜

Animation Animation.skewX(number angle)

对 X 轴坐标进行倾斜

Animation Animation.skewY(number angle)

对 Y 轴坐标进行倾斜

Animation Animation.translate(number tx, number ty)

平移变换

Animation Animation.translate3d(number tx, number ty, number tz)

对 xyz 坐标进行平移变换

Animation Animation.translateX(number translation)

对 X 轴平移

Animation Animation.translateY(number translation)

对 Y 轴平移

Animation Animation.translateZ(number translation)

对 Z 轴平移

Animation Animation.opacity(number value)

设置透明度

Animation Animation.backgroundColor(string value)

设置背景色

Animation Animation.width(number|string value)

设置宽度

Animation Animation.height(number|string value)

设置高度

Animation Animation.left(number|string value)

设置 left 值

Animation Animation.right(number|string value)

设置 right 值

Animation Animation.top(number|string value)

设置 top 值

Animation Animation.bottom(number|string value)

设置 bottom 值

  1. <view
  2. animation="{{animationData}}"
  3. style="background:red;height:100rpx;width:100rpx"
  4. ></view>
  1. Page({
  2. data: {
  3. animationData: {}
  4. },
  5. onShow() {
  6. const animation = qq.createAnimation({
  7. duration: 1000,
  8. timingFunction: 'ease',
  9. })
  10. this.animation = animation
  11. animation.scale(2, 2).rotate(45).step()
  12. this.setData({
  13. animationData: animation.export()
  14. })
  15. setTimeout(function () {
  16. animation.translate(30).step()
  17. this.setData({
  18. animationData: animation.export()
  19. })
  20. }.bind(this), 1000)
  21. },
  22. rotateAndScale() {
  23. // 旋转同时放大
  24. this.animation.rotate(45).scale(2, 2).step()
  25. this.setData({
  26. animationData: this.animation.export()
  27. })
  28. },
  29. rotateThenScale() {
  30. // 先旋转后放大
  31. this.animation.rotate(45).step()
  32. this.animation.scale(2, 2).step()
  33. this.setData({
  34. animationData: this.animation.export()
  35. })
  36. },
  37. rotateAndScaleThenTranslate() {
  38. // 先旋转同时放大,然后平移
  39. this.animation.rotate(45).scale(2, 2).step()
  40. this.animation.translate(100, 100).step({duration: 1000})
  41. this.setData({
  42. animationData: this.animation.export()
  43. })
  44. }
  45. })

Animation Animation.backgroundColor(string value)

设置背景色

参数

string value

颜色值

返回值

Animation

Animation Animation.bottom(number|string value)

设置 bottom 值

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

Array.<Object> Animation.export()

导出动画队列。export 方法每次调用后会清掉之前的动画操作。

返回值

Array.<Object>

animationData

Animation Animation.height(number|string value)

设置高度

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

Animation Animation.left(number|string value)

设置 left 值

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

Animation Animation.matrix()

transform-function matrix动画 - 图3

返回值

Animation

.matrix3d

Animation Animation.matrix3d()

transform-function matrix3d动画 - 图4

返回值

Animation

.opacity

Animation Animation.opacity(number value)

设置透明度

参数

number value

透明度,范围 0-1

返回值

Animation

.right

Animation Animation.right(number|string value)

设置 right 值

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

.rotate

Animation Animation.rotate(number angle)

从原点顺时针旋转一个角度

参数

number angle

旋转的角度。范围 [-180, 180]

返回值

Animation

.rotate3d

Animation Animation.rotate3d(number x, number y, number z, number angle)

从 X 轴顺时针旋转一个角度

参数

number x

旋转轴的 x 坐标

number y

旋转轴的 y 坐标

number z

旋转轴的 z 坐标

number angle

旋转的角度。范围 [-180, 180]

返回值

Animation

.rotateX

Animation Animation.rotateX(number angle)

从 X 轴顺时针旋转一个角度

参数

number angle

旋转的角度。范围 [-180, 180]

返回值

Animation

.rotateY

Animation Animation.rotateY(number angle)

从 Y 轴顺时针旋转一个角度

参数

number angle

旋转的角度。范围 [-180, 180]

返回值

Animation

.rotateZ

Animation Animation.rotateZ(number angle)

从 Z 轴顺时针旋转一个角度

参数

number angle

旋转的角度。范围 [-180, 180]

返回值

Animation

.scale

Animation Animation.scale(number sx, number sy)

缩放

参数

number sx

当仅有 sx 参数时,表示在 X 轴、Y 轴同时缩放sx倍数

number sy

在 Y 轴缩放 sy 倍数

返回值

Animation

.scale3d

Animation Animation.scale3d(number sx, number sy, number sz)

缩放

参数

number sx

x 轴的缩放倍数

number sy

y 轴的缩放倍数

number sz

z 轴的缩放倍数

返回值

Animation

.scaleX

Animation Animation.scaleX(number scale)

缩放 X 轴

参数

number scale

X 轴的缩放倍数

返回值

Animation

.scaleY

Animation Animation.scaleY(number scale)

缩放 Y 轴

参数

number scale

Y 轴的缩放倍数

返回值

Animation

.scaleZ

Animation Animation.scaleZ(number scale)

缩放 Z 轴

参数

number scale

Z 轴的缩放倍数

返回值

Animation

.skew

Animation Animation.skew(number ax, number ay)

对 X、Y 轴坐标进行倾斜

参数

number ax

对 X 轴坐标倾斜的角度,范围 [-180, 180]

number ay

对 Y 轴坐标倾斜的角度,范围 [-180, 180]

返回值

Animation

.skewX

Animation Animation.skewX(number angle)

对 X 轴坐标进行倾斜

参数

number angle

倾斜的角度,范围 [-180, 180]

返回值

Animation

.skewY

Animation Animation.skewY(number angle)

对 Y 轴坐标进行倾斜

参数

number angle

倾斜的角度,范围 [-180, 180]

返回值

Animation

.step

Animation Animation.step(Object object)

表示一组动画完成。可以在一组动画中调用任意多个动画方法,一组动画中的所有动画会同时开始,一组动画完成后才会进行下一组动画。

参数

Object object
属性类型默认值必填说明
durationnumber400动画持续时间,单位 ms
timingFunctionstring'linear'动画的效果
delaynumber0动画延迟时间,单位 ms
transformOriginstring'50% 50% 0'

timingFunction 的合法值

说明
'linear'动画从头到尾的速度是相同的
'ease'动画以低速开始,然后加快,在结束前变慢
'ease-in'动画以低速开始
'ease-in-out'动画以低速开始和结束
'ease-out'动画以低速结束
'step-start'动画第一帧就跳至结束状态直到结束
'step-end'动画一直保持开始状态,最后一帧跳到结束状态

返回值

Animation

animation

.top

Animation Animation.top(number|string value)

设置 top 值

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

.translate

Animation Animation.translate(number tx, number ty)

平移变换

参数

number tx

当仅有该参数时表示在 X 轴偏移 tx,单位 px

number ty

在 Y 轴平移的距离,单位为 px

返回值

Animation

.translate3d

Animation Animation.translate3d(number tx, number ty, number tz)

对 xyz 坐标进行平移变换

参数

number tx

在 X 轴平移的距离,单位为 px

number ty

在 Y 轴平移的距离,单位为 px

number tz

在 Z 轴平移的距离,单位为 px

返回值

Animation

.translateX

Animation Animation.translateX(number translation)

对 X 轴平移

参数

number translation

在 X 轴平移的距离,单位为 px

返回值

Animation

.translateY

Animation Animation.translateY(number translation)

对 Y 轴平移

参数

number translation

在 Y 轴平移的距离,单位为 px

返回值

Animation

.translateZ

Animation Animation.translateZ(number translation)

对 Z 轴平移

参数

number translation

在 Z 轴平移的距离,单位为 px

返回值

Animation

.width

Animation Animation.width(number|string value)

设置宽度

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

.backgroundColor

Animation Animation.backgroundColor(string value)

设置背景色

参数

string value

颜色值

返回值

Animation

.bottom

Animation Animation.bottom(number|string value)

设置 bottom 值

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

.export

Array.<Object> Animation.export()

导出动画队列。export 方法每次调用后会清掉之前的动画操作。

返回值

Array.<Object>

animationData

.height

Animation Animation.height(number|string value)

设置高度

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

.left

Animation Animation.left(number|string value)

设置 left 值

参数

number|string value

长度值,如果传入 number 则默认使用 px,可传入其他自定义单位的长度值

返回值

Animation

.matrix

Animation Animation.matrix()

transform-function matrix动画 - 图5

返回值

Animation