diff --git a/facetapi_slider.js b/facetapi_slider.js
index 266b3ba..c2e8d1e 100644
--- a/facetapi_slider.js
+++ b/facetapi_slider.js
@@ -27,7 +27,24 @@ Drupal.facetapi_slider.makeSlider = function($form, settings) {
   var $wrapper = $( '<div id="slider-' + settings.id + '">\n\
     <span class="facetapi-slider-min"></span>\n\
     <span class="facetapi-slider-max" style="float: right;"></span>\n\
-    <div class="facetapi-slider"></div></div>' ).insertAfter( $form );
+    <div class="facetapi-slider"></div></div><div id="apply_restrict"><a>Click to apply this restriction</a></div>' ).insertAfter( $form );
+
+  function set_slider_handle_labels(minval, maxval) {
+    $form.find('input.facetapi-slider-min').val(minval);
+    $form.find('input.facetapi-slider-max').val(maxval);
+    // Calculate the position of the slider handles
+    var $real_width = $wrapper.children('.facetapi-slider').width();
+    var $range = settings.sliderMax - settings.sliderMin;
+    var $real_left = minval - settings.sliderMin;
+    var $real_right = settings.sliderMax - maxval;
+    var $real_left_position = ($real_width/$range)*$real_left*.7-3;
+    var $real_right_position = ($real_width/$range)*$real_right*.7-3;
+    // Set the handles with text and position
+    $wrapper.children('.facetapi-slider-min').text(minval);
+    $wrapper.children('.facetapi-slider-min').css("margin-left", $real_left_position+"px");
+    $wrapper.children('.facetapi-slider-max').text(maxval);
+    $wrapper.children('.facetapi-slider-max').css("margin-right", $real_right_position+"px");
+  }
 
   $wrapper.children('.facetapi-slider').slider({
     range: true,
@@ -36,24 +53,10 @@ Drupal.facetapi_slider.makeSlider = function($form, settings) {
     step: settings.sliderStep,
     values: [settings.sliderMinHandle, settings.sliderMaxHandle],
     slide: function (event, ui) {
-      $form.find('input.facetapi-slider-min').val(ui.values[0]);
-      $form.find('input.facetapi-slider-max').val(ui.values[1]);
-
-      // Calculate the position of the slider handles
-      var $real_width = $wrapper.children('.facetapi-slider').width();
-      var $range = settings.sliderMax - settings.sliderMin;
-      var $real_left = ui.values[0] - settings.sliderMin;
-      var $real_right = settings.sliderMax - ui.values[1];
-      var $real_left_position = ($real_width/$range)*$real_left-3;
-      var $real_right_position = ($real_width/$range)*$real_right-3;
-      // Set the handles with text and position
-      $wrapper.children('.facetapi-slider-min').text(ui.values[0]);
-      $wrapper.children('.facetapi-slider-min').css("margin-left", $real_left_position+"px");
-      $wrapper.children('.facetapi-slider-max').text(ui.values[1]);
-      $wrapper.children('.facetapi-slider-max').css("margin-right", $real_right_position+"px");
+      set_slider_handle_labels(ui.values[0], ui.values[1]);
     },
     stop: function(event, ui) {
-      $form.submit();
+      $('#apply_restrict').fadeIn(500);
     },
     create: function() {
       // add classes to slider handles, handy for styling
@@ -62,12 +65,16 @@ Drupal.facetapi_slider.makeSlider = function($form, settings) {
     }
   });
 
-  $form.find('input.facetapi-slider-min').val(settings.sliderMin);
-  $form.find('input.facetapi-slider-max').val(settings.sliderMax);
-  $wrapper.children('.facetapi-slider-min').text(settings.sliderMin);
-  $wrapper.children('.facetapi-slider-max').text(settings.sliderMax);
+  $('#apply_restrict a').click(function(e) {
+    $(this).text("... getting new search-result...");
+    $form.submit();
+    return false;
+  }).parent().hide();
+
+  set_slider_handle_labels(settings.sliderMinHandle, settings.sliderMaxHandle);
 
   $form.hide();
 }
 
+
 })(jQuery);
