Canvas.cancelAnimationFrame
收藏
我的收藏

基础库 1.78.0 开始支持本方法,这是一个同步方法。

取消由 Canvas.requestAnimationFrame 添加到计划中的动画帧请求。

语法

Canvas.cancelAnimationFrame(requestId)

参数说明

requestId

类型默认值必填说明最低支持版本
number动画帧请求 ID,调用 Canvas.requestAnimationFrame 时返回1.78.0

返回值

扫码体验

请使用字节宿主APP扫码

代码示例

开发者工具中预览

<!-- index.ttml --> <canvas id="myCanvas" type="2d" style="width: {{width}}px; height: {{height}}px" ></canvas> <button type="primary" size="default" bindtap="start">start</button> <button type="primary" size="default" bindtap="stop">stop</button>

// index.js let canvas, canvasCtx, requestId; Page({ data: { width: 100, height: 100, }, onReady() { tt.createSelectorQuery() .select("#myCanvas") .node() .exec((res) => { canvas = res[0].node; canvasCtx = canvas.getContext("2d"); canvasCtx.font = "20px Georgia"; canvasCtx.fillStyle = "red"; }); }, render() { requestId = canvas.requestAnimationFrame(this.render); if (requestId < 1000) { canvasCtx.clearRect(0, 0, 100, 100); canvasCtx.fillText(requestId, 0, 50); } else { canvas.cancelAnimationFrame(requestId); } }, start() { requestId = canvas.requestAnimationFrame(this.render); }, stop() { canvas.cancelAnimationFrame(requestId); }, });

Bug & Tip

该文档是否有帮助?