diff --git a/views-infinite-scroll.js b/views-infinite-scroll.js
index 012a81b..aeff4f2 100644
--- a/views-infinite-scroll.js
+++ b/views-infinite-scroll.js
@@ -1,6 +1,11 @@
 (function ($) {
   "use strict";
 
+  var $window = $(window);
+
+  // The threshold for how far to the bottom you should reach before reloading.
+  var scroll_threshold = 200;
+
   /**
    * Insert a views infinite scroll view into the document after AJAX.
    *
@@ -13,4 +18,31 @@
     $existing_view.replaceWith($new_view);
     $(document).trigger('infiniteScrollComplete', [$new_view, $existing_content]);
   };
+
+  /**
+   * Handle the automatic paging based on the scroll amount.
+   */
+  Drupal.behaviors.views_infinite_scroll_automatic = {
+    attach : function(context, settings) {
+
+      var settings = settings.views_infinite_scroll[0];
+      var loadingImg = '<div id="views_infinite_scroll-ajax-loader"><img src="' + settings.img_path + '" alt="loading..."/></div>';
+
+      $('.pager--infinite-scroll', context).once().each(function() {
+        var $pager = $(this);
+        $pager.find('.pager__item').hide();
+        if ($pager.find('.pager__item a').length) {
+          $pager.append(loadingImg);
+        }
+        $window.on('scroll.views_infinite_scroll', function() {
+          if (window.innerHeight + window.pageYOffset > $pager.offset().top - scroll_threshold) {
+            $pager.find('.pager__item a').click();
+            $window.off('scroll.views_infinite_scroll');
+          }
+        });
+      });
+
+    }
+  };
+
 })(jQuery);
diff --git a/views_plugin_pager_infinite_scroll.inc b/views_plugin_pager_infinite_scroll.inc
index 0e6c568..64c7642 100644
--- a/views_plugin_pager_infinite_scroll.inc
+++ b/views_plugin_pager_infinite_scroll.inc
@@ -75,8 +75,18 @@ class views_plugin_pager_infinite_scroll extends views_plugin_pager_full {
    * {@inheritdoc}
    */
   function render($input) {
+    global $base_url;
     $this->view->set_use_ajax(TRUE);
     $pager_theme = views_theme_functions('views_infinite_scroll_pager', $this->view, $this->display);
+    $img_path = $base_url . '/' . drupal_get_path('module', 'views_infinite_scroll') . '/images/ajax-loader.gif';
+    $settings = array(
+      'views_infinite_scroll' => array(
+        array(
+          'img_path' => $img_path,
+        ),
+      ),
+    );
+    drupal_add_js($settings, array('type' => 'setting', 'scope' => JS_DEFAULT));
     drupal_add_js(drupal_get_path('module', 'views_infinite_scroll') . '/views-infinite-scroll.js', array('scope' => 'footer'));
     return theme($pager_theme, array('text' => $this->options['text']));
   }
