diff --git a/jquerymenu.js b/jquerymenu.js
index 7667b39..9ef2f2f 100644
--- a/jquerymenu.js
+++ b/jquerymenu.js
@@ -7,21 +7,48 @@ Drupal.behaviors.jquerymenu = function(context) {
   }
   $('ul.jquerymenu li').hover(jqm_showit, jqm_hideit);
 
-  $('ul.jquerymenu:not(.jquerymenu-processed)', context).addClass('jquerymenu-processed').each(function(){
-    $(this).find("li.parent span.parent").click(function(){
-      momma = $(this).parent();
-      if ($(momma).hasClass('closed')){
-        $($(this).siblings('ul').children()).hide().fadeIn('3000');
-        $(momma).children('ul').slideDown('700');
-        $(momma).removeClass('closed').addClass('open');
-        $(this).removeClass('closed').addClass('open');
-      }
-      else{
-        $(momma).children('ul').slideUp('700');
-        $($(this).siblings('ul').children()).fadeOut('3000');
-        $(momma).removeClass('open').addClass('closed');
-        $(this).removeClass('open').addClass('closed');
-      }
+  if (Drupal.settings.jquerymenu.hover === 1) {
+    $('ul.jquerymenu:not(.jquerymenu-processed)', context).addClass('jquerymenu-processed').each(function(){
+      $(this).find("li.parent").mouseenter(function(){
+        momma = $(this);
+        if ($(momma).hasClass('closed')){
+          $($(this).siblings('ul').children()).hide().fadeIn('3000');
+          $(momma).children('ul').slideDown('700');
+          $(momma).removeClass('closed').addClass('open');
+          $(this).removeClass('closed').addClass('open');
+        }
+      });
+      $(this).find("li.parent").mouseleave(function(){
+        momma = $(this);
+        if ($(momma).hasClass('open')){
+          $(momma).children('ul').slideUp('700');
+          $($(this).siblings('ul').children()).fadeOut('3000');
+          $(momma).removeClass('open').addClass('closed');
+          $(this).removeClass('open').addClass('closed');
+        }
+      });
     });
-  });
+    $('ul.jquerymenu-processed span.parent').remove();
+  }
+
+  else if (Drupal.settings.jquerymenu.hover === 0) {
+    $('ul.jquerymenu:not(.jquerymenu-processed)', context).addClass('jquerymenu-processed').each(function(){
+      $(this).find("li.parent span.parent").click(function(){
+        momma = $(this).parent();
+        if ($(momma).hasClass('closed')){
+          $($(this).siblings('ul').children()).hide().fadeIn('3000');
+          $(momma).children('ul').slideDown('700');
+          $(momma).removeClass('closed').addClass('open');
+          $(this).removeClass('closed').addClass('open');
+        }
+        else{
+          $(momma).children('ul').slideUp('700');
+          $($(this).siblings('ul').children()).fadeOut('3000');
+          $(momma).removeClass('open').addClass('closed');
+          $(this).removeClass('open').addClass('closed');
+        }
+      });
+    });
+  }
+
 }
\ No newline at end of file
diff --git a/jquerymenu.module b/jquerymenu.module
index ef79f41..47e8d33 100644
--- a/jquerymenu.module
+++ b/jquerymenu.module
@@ -1,5 +1,5 @@
 <?php
-**
+/**
  * @file
  * The JQuerymenu module parses hierarchical link arrays and renders them as click and expand menu blocks.
  */
@@ -9,7 +9,15 @@
  */
 function jquerymenu_init() {
   drupal_add_css(drupal_get_path('module', 'jquerymenu') .'/jquerymenu.css');
-  if (variable_get('jq_menu_animate', 0) == 0) {
+  $settings = array(
+    'jquerymenu' => array(
+      'hover' => variable_get('jq_menu_hover', 0),
+      'animate' => variable_get('jq_menu_animate', 0),
+      'edit_link' => variable_get('jq_edit_link', 0),
+    )
+  );
+  drupal_add_js($settings, 'setting');
+  if (variable_get('jq_menu_animate', 0) == 0 || variable_get('jq_menu_hover', 0) == 1) {
     drupal_add_js(drupal_get_path('module', 'jquerymenu') .'/jquerymenu.js');
   }
   if (variable_get('jq_menu_animate', 0) == 1) {
@@ -86,6 +94,12 @@ function jq_configuration_form() {
     '#description' => t('If checked the edit link will display when hovering over menu items to those having administration privileges. This setting will only affect menus directly created by the jquery menu module. Other modules that implement the edit link will have their own settings.'),
     '#default_value' => variable_get('jq_edit_link', 1),
     );
+  $form['jq_hover'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Expand children on hover.'),
+    '#description' => t('If checked the child menu items will be displayed when hovering over the parent menu item.'),
+    '#default_value' => variable_get('jq_menu_hover', 0),
+    );
   $form['jq_submit'] = array(
     '#type' => 'submit',
     '#value' => t('Save'),
@@ -96,6 +110,8 @@ function jq_configuration_form() {
 function jq_configuration_form_submit($form, &$form_state) {
   $animate = $form_state['values']['jq_animate'];
   variable_set('jq_menu_animate', $animate);
+  $hover = $form_state['values']['jq_hover'];
+  variable_set('jq_menu_hover', $hover);
   $editlink = $form_state['values']['jq_editlink'];
   variable_set('jq_edit_link', $editlink);
   $choices = $form_state['values']['jq_activate'];
