0

Это может быть очень простой вопрос, но я только начал играть с рамкой анимации запросов, и мне нужно некоторое руководство. Я нашел в Интернете, что самый безопасный (с точки зрения совместимости браузера) синтаксис для запроса анимации кадра этот код:JS cancelAnimationFrame синтаксис

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

, а затем вызвать его так: requestAnimFrame(protect);

вопрос заключается в том, чтобы построить отменить синтаксис фрейма анимации, чтобы идеально совместить с предыдущим. (следует отменить все вышеперечисленные префиксные стартеры и установить таймаут в случае возврата).

Спасибо за ответы;)

--- EDIT ---

Я просто нашел эту статью >click me<

Решение, представленное в статье включает только вендорам webkit и moz как они утверждают, что 2013.03.06: No more [ms] or [o] prefixes neccessary. Removed. Я не знаю сейчас, если решение будет полным и может быть использовано сегодня.

ответ

1

Я люблю caniuse.com для такого рода вещей. Проверьте:

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

Вы можете нажать Показать все, чтобы увидеть все версии браузера и какие requestAnimationFrame они поддерживают (включены префиксы).

Но я думаю, что достаточно просто использовать requestAnimationFrame и cancelAnimationFrame. Если вам действительно не нужно действительно поддерживать браузеры, такие как IE9 или Safari 6, вам не нужно это делать.

+0

Мне нужна поддержка для ie9 и такая неудовлетворительная – Mevia

+0

В этом случае ваш полис из статьи - ваш лучший выбор (https://gist.github.com/paulirish/1579671), так как он также полирует cancelAnimationFrame. Обратите внимание, что в IE9 у вас будет дерьмовая производительность. – kosman

Смежные вопросы