Jquery menu uses simple, cross browser compatible jquery to transform your multilevel menus into click and expand menus. Yes this module is similar to dhtml menus and active menus, but it is different in a couple of key ways.

  1. Unlike dhtml menus (which requires you to click twice on a link to actually follow an expanded link) Jquery menus separates the link from the expanding mechanism (there is a small plus symbol that you click instead to expand the menu). This makes for a more natural navigation.
  2. Unlike active menus, which makes ajax calls to fill in the lower level menus when you click the plus symbol, Jquery menu creates the menu in full on the initial page load. I personally have used active menus for several months and have found that those ajax calls sometimes fail, and are not as stable as jquery.
  3. Unlike Active menus which transforms all menus into active menus once the module is turned on, Jquery menu only creates a jquery block for the menus that you specify. To chose which menus you want to be active you just have to visit the admin page at 'admin/settings/jquerymenu' .
  4. Jquery menu is easily themable. Since the jquery menu blocks only use a small number of styles, and don’t use the default list styles, overriding it with your own css is easy. Also the important display elements are contained in themable functions so you can tinker with the layout if you like.

As of version 1.8 the JQuerymenu module has been opened up as an api which can be used by other modules to create hierarchical expandable menus using non-menu data. Official documentation for the API can be found on my website at http://pixelclever.com/official-documentation-jquery-menu-api

Modules which use the new JQuery Menu Api to create click and expand menus.

This module has been thoroughly tested on Firefox, Safari, IE6 and IE7 and I personally use this module every day on multiple themes during cross browser testing for theme design. If you are having some kind of quirk where links are disappearing or something like that it is either a theming issue or a module compatibility issue.

Before you write a post, test your site with one of the themes that ship with Drupal and turn off all other contributed modules. If your menu now works (and it probably will) then please don't post a bug report unless you can show that there is somehow an error in the code inside of the JQuery menu module. Theme related bugs are not supported for the simple reason that the only way to know what is causing the problem would be to work on your theme. The JQuery and the CSS used to create the expanding menus can be broken by bad css, broken javascript, overlapping style names etc... If you need help on getting rid of a theme problem I can be hired to do so, but I won't do it on the issue queue.

Also, do not post issues related to theming problems with instructions for others on how to alter the module's files to get it to display properly for your theme. Theme issues should be dealt with from within the theming layer. If you don't know how to do this then you shouldn't be posting a solution.

ATTENTION - After upgrading to version 3+ from any version below you will have to revisit the admin/settings/jquerymenu page and the blocks page to re-enable your menus. There was some cleanup done that made this unavoidable.

Drupal 7
We have created a Drupal 7 version. Initially it will have updates for all the old D6 issues, as well as a few added features which were coded for D6. Once it is stable and people are happy with it, we can look at adding other features people are interested in

Project information