1

我正在尝试在 Firefox 中调用 mozRequestAnimationFrame,但我不断收到错误消息。这是我的代码:

var obj={
    animFrame:mozRequestAnimationFrame
}

var animF=mozRequestAnimationFrame;

function a(){
 console.log('a called');   
}

animF(a);

obj.animFrame(a);

错误发生在obj.animFrame(a);我收到以下错误消息:

WrappedNative原型对象的非法操作

我在 SO:requestAnimationFrame上找到了这个线程 ,然后发现 requestanimationframe 可能没有正确的“this”上下文,所以我尝试了

obj.animFrame(a).bind(window);

但仍然收到相同的错误消息。那么为什么会出现错误呢?

4

1 回答 1

3

我不知道为什么需要将指向requestAnimationFrame( mozRequestAnimationFrame) 的指针保存到某个对象中,但请尝试下一个代码以避免错误:

var obj={
    animFrame:mozRequestAnimationFrame.bind(window)
}

function a(){
 console.log('a called');   
}

obj.animFrame(a);
于 2012-06-05T05:23:41.787 回答