我在查找如何在课堂上使用requestAnimationFrame
时遇到问题。
此代码工作正常:
window.onload = function () {
var width = 20;
function animation() {
width++;
var element = document.getElementById("box");
element.style.width = width + "px";
requestAnimationFrame(animation);
}
requestAnimationFrame(animation);
};
但是当我尝试将它放入课堂时,我没有得到任何结果。
class Animation{
width: number = 20;
constructor() {
requestAnimationFrame(this.loop);
}
loop() {
this.width++;
var element = document.getElementById("box");
element.style.width = this.width + "px";
requestAnimationFrame(this.loop);
}
}
window.onload = function () {
var animation = new Animation();
};
有人能告诉我这里有什么问题吗?
答案 0 :(得分:9)
requestAnimationFrame(this.loop);
如果您传递的是他们打算致电的功能,请使用箭头requestAnimationFrame(()=>this.loop());
或loop = () => {