diff --git a/public/js/extra.js b/public/js/extra.js
index 44a390522..01363886f 100644
--- a/public/js/extra.js
+++ b/public/js/extra.js
@@ -204,8 +204,7 @@ function parseMeta(md, edit, view, toc, tocAffix) {
     }
 }
 
-var viewAjaxCallback = null;
-window.viewAjaxCallback = viewAjaxCallback;
+window.viewAjaxCallback = null;
 
 //regex for extra tags
 var spaceregex = /\s*/;
diff --git a/public/js/slide.js b/public/js/slide.js
index c260de6d2..16ea6b8fa 100644
--- a/public/js/slide.js
+++ b/public/js/slide.js
@@ -97,7 +97,7 @@ var queryOptions = Reveal.getQueryHash() || {};
 var options = extend(defaultOptions, options, queryOptions);
 Reveal.initialize(options);
 
-viewAjaxCallback = function () {
+window.viewAjaxCallback = function () {
     Reveal.layout();
 };
 
diff --git a/public/js/syncscroll.js b/public/js/syncscroll.js
index b2fee76c6..47d0e1c4d 100644
--- a/public/js/syncscroll.js
+++ b/public/js/syncscroll.js
@@ -138,7 +138,7 @@ function setupSyncAreas(edit, view, markdown) {
 
 var scrollMap, lineHeightMap, viewTop, viewBottom;
 
-viewAjaxCallback = clearMap;
+window.viewAjaxCallback = clearMap;
 
 function clearMap() {
     scrollMap = null;