diff --git a/plugins/facetapi/widget_links.inc b/plugins/facetapi/widget_links.inc
index 4f4f9e1..166d115 100644
--- a/plugins/facetapi/widget_links.inc
+++ b/plugins/facetapi/widget_links.inc
@@ -16,12 +16,12 @@ class SearchApiRangesWidgetUISlider extends FacetapiWidget {
   public function execute() {
     $element = &$this->build[$this->facet['field alias']];
 
-    $theme_suffix  = '';
+    $theme_suffix = '';
     $theme_suffix .= '__' . preg_replace('/\W+/', '_', $this->facet->getAdapter()->getSearcher());
     $theme_suffix .= '__' . preg_replace('/\W+/', '_', $this->facet['field alias']);
 
     $element = array(
-      '#theme'  => 'search_api_ranges_slider' . $theme_suffix,
+      '#theme' => 'search_api_ranges_slider' . $theme_suffix,
       '#slider' => $this->_buildUISliderForm(),
     );
   }
@@ -35,33 +35,28 @@ class SearchApiRangesWidgetUISlider extends FacetapiWidget {
       '#title' => t('Name'),
       '#default_value' => $this->settings->settings['name'],
       '#description' => t('The name of the range field.'),
-      '#states' => array(
-        'visible' => array(
-          'select[name="widget"]' => array('value' => $this->id),
-        ),
-      ),
+      '#states' => array('visible' => array('select[name="widget"]' => array('value' => $this->id), ), ),
     );
     $form['widget']['widget_settings']['links'][$this->id]['prefix'] = array(
       '#type' => 'textfield',
       '#title' => t('Prefix'),
       '#default_value' => $this->settings->settings['prefix'],
       '#description' => t('Adds a prefix to the slider, e.g. $, #.'),
-      '#states' => array(
-        'visible' => array(
-          'select[name="widget"]' => array('value' => $this->id),
-        ),
-      ),
+      '#states' => array('visible' => array('select[name="widget"]' => array('value' => $this->id), ), ),
     );
     $form['widget']['widget_settings']['links'][$this->id]['suffix'] = array(
       '#type' => 'textfield',
       '#title' => t('Suffix'),
       '#default_value' => $this->settings->settings['suffix'],
       '#description' => t('Adds a suffix to the slider, e.g. &euro;, pcs., etc.'),
-      '#states' => array(
-        'visible' => array(
-          'select[name="widget"]' => array('value' => $this->id),
-        ),
-      ),
+      '#states' => array('visible' => array('select[name="widget"]' => array('value' => $this->id), ), ),
+    );
+    $form['widget']['widget_settings']['links'][$this->id]['auto-submit-delay'] = array(
+      '#type' => 'textfield',
+      '#title' => t('Auto Submit Delay'),
+      '#default_value' => $this->settings->settings['auto-submit-delay'],
+      '#description' => t('Automatically submit form after the user changes releases slider handles. Enter a delay in milliseconds, i.e. 1000 for 1 second.'),
+      '#states' => array('visible' => array('select[name="widget"]' => array('value' => $this->id), ), ),
     );
   }
 
@@ -73,6 +68,7 @@ class SearchApiRangesWidgetUISlider extends FacetapiWidget {
       'name' => '',
       'prefix' => '',
       'suffix' => '',
+      'auto-submit-delay' => 1500,
     );
   }
 
@@ -95,7 +91,7 @@ class SearchApiRangesWidgetUISlider extends FacetapiWidget {
       'range_field' => $this->facet['field alias'],
       'query' => $query,
     );
-    
+
     // Query the min/max values for the range slider
     $min_value = search_api_ranges_minmax($variables, 'ASC');
     $max_value = search_api_ranges_minmax($variables, 'DESC');
@@ -134,8 +130,10 @@ class SearchApiRangesWidgetUISlider extends FacetapiWidget {
       'max' => $max_value,
       'from' => $from_value,
       'to' => $to_value,
+      'auto_submit_delay' => is_numeric($this->settings->settings['auto-submit-delay']) ? $this->settings->settings['auto-submit-delay'] : 0,
       'active_items' => $this->facet->getAdapter()->getAllActiveItems(),
     );
     return drupal_get_form('search_api_ranges_block_view_form', $variables);
   }
+
 }
diff --git a/search_api_ranges.js b/search_api_ranges.js
index d07327f..b0a5c0f 100644
--- a/search_api_ranges.js
+++ b/search_api_ranges.js
@@ -1,8 +1,11 @@
 (function($) {
   Drupal.behaviors.search_api_ranges = {
     attach: function(context, settings) {
+
       var submitTimeout = '';
+
       $('div.search-api-ranges-widget').each(function() {
+
         var widget = $(this);
         var slider = widget.find('div.range-slider');
         var rangeMin = widget.find('input[name=range-min]');
@@ -67,9 +70,12 @@
       });
 
       function delaySubmit(widget) {
-        submitTimeout = setTimeout(function() {
-          widget.find('form').submit();
-        }, 1500);
+        var autoSubmitDelay = widget.find('input[name=delay]').val();
+        if (autoSubmitDelay != undefined && autoSubmitDelay != 0) {
+          submitTimeout = setTimeout(function() {
+            widget.find('form').submit();
+          }, autoSubmitDelay);
+        }
       };
     }
   };
diff --git a/search_api_ranges.module b/search_api_ranges.module
index cefb56e..98ea19c 100644
--- a/search_api_ranges.module
+++ b/search_api_ranges.module
@@ -248,6 +248,12 @@ function search_api_ranges_block_view_form($form, &$form_state, $variables) {
     '#type' => 'hidden',
     '#value' => $variables['range_field'],
   );
+  if ($variables['auto_submit_delay']) {
+    $form['delay'] = array(
+      '#type' => 'hidden',
+      '#value' => $variables['auto_submit_delay'],
+    );
+  }
   $form['submit'] = array(
     '#type' => 'submit',
     '#value' => t('Go'),
