Introduction to SmartMenus jQuery

SmartMenus jQuery is a successor to one of the oldest website menu scripts which was released back on August 2, 2001. Although the name of the project remains the same, the jQuery plugin is a completely new open-source script designed and developed from scratch. It's main goal was to create a script that supports equally well widest possible variety of browsers running on all kinds of platforms and devices - desktop computers, tablets, mobile phones.

Key features

  • Optimized for mobile and desktop browsers supporting touch, mouse or both inputs at the same time
  • Section 508 compliant and fully accessible to assistive technology like screen readers
  • List-based (search engine friendly) markup - can be easily generated from any kind of database
  • Completely CSS driven with fully customizable menu styles
  • Unlimited menu trees on the same page and unlimited sub menu levels supported
  • Horizontal or vertical main menu items arrangement
  • Absolute/relative/fixed positioning for the main menus supported
  • Right-to-left and bottom-to-top display of the sub menus is possible
  • Full support for RTL text/pages (e.g. Hebrew, Arabic)
  • Full window size detection - the menus will always be kept inside the window's boundaries
  • Automatically adjustable width for the sub menus is supported (including min/max settings)
  • Advanced keyboard navigation support
  • Compact optimized code

Cross-browser support

All browsers that are supported by jQuery are fully supported by the SmartMenus jQuery plugin script - i.e.:

  • IE 6.0+ [1]
  • Firefox 10+
  • Safari 5.0+
  • Chrome
  • Opera (desktop and mobile 11.0+)
  • Mobile Webkit browsers

We've tested successfully all major mobile browsers and platforms too.

Due to the fact that the SmartMenus jQuery menu definitions are embedded on the page in the form of standard list-based markup, the links in the menus are fully accessible to all other browsers like search engines, text-mode browsers and assistive technology (like screen readers).

[1] All CSS hacks and JS tweaks targeting IE6-8 were dropped from the codebase as of v0.9.7. Since IE8 is a pretty capable browser CSS-wise, the latest version of the script should work fine in it with just some minor issues (auto-width support for the sub menus is the main broken feature). However, in IE6/7 some notable layout issues are present so if you need to support these browsers, you may opt for v0.9.6 which was the last one to fully support them.