diff --git a/facetapi.css b/facetapi.css
index c8ad456..5028253 100644
--- a/facetapi.css
+++ b/facetapi.css
@@ -3,6 +3,14 @@
   margin-right: .5em;
 }
 
+ul li.leaf a.facetapi-checkbox, ul li.expanded a.facetapi-checkbox,
+ul li.collapsed a.facetapi-checkbox,
+ul li.leaf a.facetapi-checkbox-processed,
+ul li.expanded a.facetapi-checkbox-processed,
+ul li.collapsed a.facetapi-checkbox-processed {
+  display: inline;
+}
+
 /**
 * Hide elements visually, but keep them available for screen-readers.
 *
@@ -16,4 +24,4 @@
 position: absolute !important;
 clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
 clip: rect(1px, 1px, 1px, 1px);
-}
\ No newline at end of file
+}
diff --git a/facetapi.js b/facetapi.js
index de41127..356ea2c 100644
--- a/facetapi.js
+++ b/facetapi.js
@@ -8,7 +8,8 @@ Drupal.behaviors.facetapi = function(context) {
     for (var index in settings.facetapi.facets) {
       if (null != settings.facetapi.facets[index].makeCheckboxes) {
         // Find all checkbox facet links and give them a checkbox.
-        $('#' + settings.facetapi.facets[index].id + ' a.facetapi-checkbox', context).each(Drupal.facetapi.makeCheckbox);
+        // Drupal 6 problem, it did not want to select on the real ID
+        $('.facetapi-facetapi_checkbox_links a.facetapi-checkbox', context).each(Drupal.facetapi.makeCheckbox);
       }
       if (null != settings.facetapi.facets[index].limit) {
         // Applies soft limit to the list.
@@ -101,4 +102,37 @@ Drupal.facetapi.makeCheckbox = function() {
   }
 }
 
-})(jQuery);
+/**
+ * Taken from https://gist.github.com/2158219. All credits go to that url
+ */
+if(typeof jQuery.proxy === 'undefined'){
+  jQuery.extend({
+    proxy : function( fn, proxy, thisObject ) {
+      if ( arguments.length === 2 ) {
+        if ( typeof proxy === "string" ) {
+          thisObject = fn;
+          fn = thisObject[ proxy ];
+          proxy = undefined;
+
+        } else if ( proxy && !jQuery.isFunction( proxy ) ) {
+          thisObject = proxy;
+          proxy = undefined;
+        }
+      }
+
+      if ( !proxy && fn ) {
+        proxy = function() {
+          return fn.apply( thisObject || this, arguments );
+        };
+      }
+
+      // Set the guid of unique handler to the same of original handler, so it can be removed
+      if ( fn ) {
+        proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.guid++;
+      }
+
+      // So proxy can be declared as an argument
+      return proxy;
+    }
+  });
+}
diff --git a/plugins/facetapi/widget_links.inc b/plugins/facetapi/widget_links.inc
index 00adfe7..1408a64 100644
--- a/plugins/facetapi/widget_links.inc
+++ b/plugins/facetapi/widget_links.inc
@@ -113,7 +113,10 @@ class FacetapiWidgetLinks extends FacetapiWidget {
 
       // Gets theme hook, adds last minute classes.
       $class = ($item['#active']) ? 'facetapi-active' : 'facetapi-inactive';
-      $variables['options']['attributes']['class'] = $class;
+      $variables['options']['attributes']['class'][] = $class;
+
+      // Drupal 6 does not allow classes to be in an array
+      $variables['options']['attributes']['class'] = implode(' ', $variables['options']['attributes']['class']);
 
       // Themes the link, adds row to items.
       $row['data'] = theme($item['#theme'], $variables);
