【发布时间】:2013-12-01 03:04:03
【问题描述】:
所以我用 requestAnimationFrame 编写了一个工作应用程序(实际上是一半)。在项目变得过于复杂之前,我急于以面向对象的风格重写它,以便我们可以更好地实现插件(并且还可以在不更改整个应用程序的情况下修复模块)。事实上,该应用程序的第一个版本确实是一团糟,由大量测试代码组成。
所以我有以下内容:
Aventura.prototype.update = function() {
var av = this;
requestAnimationFrame(av.update);
/* ... frame code ... */
};
我在控制台日志中得到“Uncaught TypeError: Type error”,就在 requestAnimationFrame 行中。我知道我的浏览器有一个正确的 requestAnimationFrame 实现,因为我完美地使用了我的应用程序的混乱版本。
我得出的结论是它引发了异常,因为我正在调用一个方法,该方法是调用者自己的父对象的成员(我知道这是完全相同的方法,但问题显然不在于 self-打电话,因为那是英国皇家空军应该做的)。有什么问题的线索吗?
【问题讨论】:
标签: javascript html requestanimationframe