0

这可能是一个非常简单的问题,但我刚开始使用请求动画帧,我需要一些指导。我在互联网上发现请求动画帧的最安全(就浏览器兼容性而言)语法是以下代码:

    window.requestAnimFrame = (function() {
        return  window.requestAnimationFrame       || 
                window.webkitRequestAnimationFrame || 
                window.mozRequestAnimationFrame    || 
                window.oRequestAnimationFrame      || 
                window.msRequestAnimationFrame     || 
                function(callback, element) {
                    window.setTimeout(callback, 1000 / 60);
                };
    })();

然后这样称呼它:requestAnimFrame( protect );

问题是如何构建取消动画帧语法以与上述语法完全一致。(应取消所有上述前缀启动器并在回退的情况下设置超时)。

谢谢你的回答;)

- -编辑 - -

我刚找到这篇文章>点击我<

文章中提出的解决方案仅包括供应商webkitmoz因为他们声称2013.03.06: No more [ms] or [o] prefixes neccessary. Removed.我现在不知道该解决方案是否完整并且可以在今天使用。

4

1 回答 1

3

我喜欢 caniuse.com 的这些东西。查看:

http://caniuse.com/#feat=requestanimationframe

您可以单击 Show All 并查看所有浏览器版本以及它们支持的 requestAnimationFrame 类型(包括前缀)。

但我认为仅使用requestAnimationFrameand是非常安全的cancelAnimationFrame。除非你真的真的真的需要支持像 IE9 或 Safari 6 这样的浏览器,否则你不需要填充这个。

于 2016-01-14T09:25:58.530 回答