从 JavaScript 动画对象原型设置变量

Setting variables from a JavaScript animation object prototype

本文关键字:设置 变量 原型 对象 JavaScript 动画      更新时间:2023-09-26

我正在尝试遵循一本关于使用 JS Canvas 制作动画的书中的示例。

其中一个示例使用以下调用从原型创建子画面:

sprite = new Sprite('runner',
                        new SpriteSheetPainter(runnerCells),
                        [ runInPlace, moveLeftToRight ]);

"runnerCells"是对JS数组的引用,该数组确定动画的每个单元格在精灵表上的位置。 我不明白的是,我如何以一种允许我将"runnerCells"更改为不同数组以创建不同动画的方式访问"sprite"变量。 有什么建议吗?

您可以在此处查看完整的示例:http://corehtml5canvas.com/code-live/ch06/example-6.9/example.html

使用位于此处的相关 JS 库:http://corehtml5canvas.com/code-live/ch06/example-6.9/example.js

我可能是错的,但看起来Sprite并没有暴露它的SpriteSheetPainter实例。您可以尝试不匿名传递它,而是创建一个变量,以便您可以引用它并传递该变量

var ssp = new SpriteSheetPainter(runnerCells)
var sprite = new Sprite('runner',
                        ssp,
                        [ runInPlace, moveLeftToRight ]);
console.log(ssp.cells);