diff --git a/JavaScript/Web/AnimationFrame.hs b/JavaScript/Web/AnimationFrame.hs
--- a/JavaScript/Web/AnimationFrame.hs
+++ b/JavaScript/Web/AnimationFrame.hs
@@ -69,7 +69,7 @@
 foreign import javascript unsafe "h$animationFrameCancel"
   js_cancelAnimationFrame :: AnimationFrameHandle -> IO ()
 foreign import javascript interruptible
-  "((x,c) => { return x.handle = window.requestAnimationFrame(c); })"
+  "((x,c) => { return x.handle = requestAnimationFrame(c); })"
   js_waitForAnimationFrame :: AnimationFrameHandle -> IO Double
 foreign import javascript unsafe "h$animationFrameRequest"
   js_requestAnimationFrame :: AnimationFrameHandle -> IO ()
diff --git a/ghcjs-base.cabal b/ghcjs-base.cabal
--- a/ghcjs-base.cabal
+++ b/ghcjs-base.cabal
@@ -1,6 +1,6 @@
 cabal-version:       3.0
 name:                ghcjs-base
-version:             0.8.0.3
+version:             0.8.0.4
 synopsis:            base library for GHCJS
 homepage:            http://github.com/ghcjs/ghcjs-base
 license:             MIT
diff --git a/jsbits/animationFrame.js b/jsbits/animationFrame.js
--- a/jsbits/animationFrame.js
+++ b/jsbits/animationFrame.js
@@ -1,6 +1,6 @@
 //#OPTIONS: CPP
 function h$animationFrameCancel(h) {
-    if(h.handle) window.cancelAnimationFrame(h.handle);
+    if(h.handle) cancelAnimationFrame(h.handle);
     if(h.callback) {
         h$release(h.callback)
         h.callback = null;
@@ -8,7 +8,7 @@
 }
 
 function h$animationFrameRequest(h) {
-    h.handle = window.requestAnimationFrame(function(ts) {
+    h.handle = requestAnimationFrame(function(ts) {
         var cb = h.callback;
         if(cb) {
 	        h$release(cb);
