diff --git a/sharethis.js b/sharethis.js
new file mode 100644
index 0000000..f702577
--- /dev/null
+++ b/sharethis.js
@@ -0,0 +1,24 @@
+(function($) {
+  Drupal.behaviors.sharethis = {
+    attach: function(context) {
+      $('.sharethis-wrapper span').keyup(function (e) {
+        // The enter key code (13).
+        if (e.which == 13 || e.which == 32) {
+
+          // Find innermost span
+          var $target = $(this).children('span');
+          while ($target.length) {
+            $target = $target.children('span');
+          }
+          var button = $target.end()[0];
+
+          if (typeof button !== 'undefined') {
+            button.click();
+          }
+
+          return false;
+        }
+      });
+    }
+  }
+})(jQuery);
diff --git a/sharethis.module b/sharethis.module
index a1d6d94..44baabc 100644
--- a/sharethis.module
+++ b/sharethis.module
@@ -354,6 +354,9 @@ function theme_sharethis($variables) {
     $attributes['st_url'] = $m_path;
     $attributes['st_title'] = $title;
     $attributes['class'] = 'st_' . $display . $type;
+    $attributes['style'] = 'background:none; border:none; padding:none;';
+    $attributes['role'] = 'button';
+    $attributes['tabindex'] = 0;
     $variables['attributes'] = $attributes;
 
     if ($serviceCodeName == 'twitter') {
@@ -440,6 +443,9 @@ function sharethis_include_js() {
     $st_js = "if (typeof stLight !== 'undefined') { stLight.options($stlight); }";
     drupal_add_js($st_js, 'inline');
 
+    $my_path = drupal_get_path('module', 'sharethis');
+    drupal_add_js($my_path . '/sharethis.js');
+
     $has_run = TRUE;
   }
   return $has_run;
