Better window workaround. Thanks @raynos
This commit is contained in:
parent
066992c251
commit
e194592403
1 changed files with 8 additions and 8 deletions
|
@ -34,18 +34,18 @@ ElmRuntime.filterDeadInputs = function(inputs) {
|
||||||
|
|
||||||
// define the draw function
|
// define the draw function
|
||||||
var vendors = ['ms', 'moz', 'webkit', 'o'];
|
var vendors = ['ms', 'moz', 'webkit', 'o'];
|
||||||
var window = window || {};
|
var win = typeof window !== 'undefined' ? window : {};
|
||||||
for (var i = 0; i < vendors.length && !window.requestAnimationFrame; ++i) {
|
for (var i = 0; i < vendors.length && !win.requestAnimationFrame; ++i) {
|
||||||
window.requestAnimationFrame = window[vendors[i]+'RequestAnimationFrame'];
|
win.requestAnimationFrame = win[vendors[i]+'RequestAnimationFrame'];
|
||||||
window.cancelAnimationFrame = window[vendors[i]+'CancelAnimationFrame'] ||
|
win.cancelAnimationFrame = win[vendors[i]+'CancelAnimationFrame'] ||
|
||||||
window[vendors[i]+'CancelRequestAnimationFrame'];
|
win[vendors[i]+'CancelRequestAnimationFrame'];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (window.requestAnimationFrame && window.cancelAnimationFrame) {
|
if (win.requestAnimationFrame && win.cancelAnimationFrame) {
|
||||||
var previous = 0;
|
var previous = 0;
|
||||||
ElmRuntime.draw = function(callback) {
|
ElmRuntime.draw = function(callback) {
|
||||||
window.cancelAnimationFrame(previous);
|
win.cancelAnimationFrame(previous);
|
||||||
previous = window.requestAnimationFrame(callback);
|
previous = win.requestAnimationFrame(callback);
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
ElmRuntime.draw = function(callback) { callback(); };
|
ElmRuntime.draw = function(callback) { callback(); };
|
||||||
|
|
Loading…
Reference in a new issue