We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Trusted by the world’s leading companies

Syncfusion Trusted Companies

Overview

The JavaScript Menu Bar is a graphical user interface control that serves as a navigation header for your web application or site. It supports data binding, templates, icons, multilevel nesting, and horizontal and vertical menus.


Data binding

Menu can be bound to data in the form of JavaScript object array collection. It supports self-referential or hierarchical structure of data.


Users tend to perceive visual information better than text. Include icons or sprite images to the menu items easily to provide a visual representation of the actions.


Templates is used to create custom user experience. Menu provides template for each menu item to customize the entire Menu UI.


Vertical Menu

JavaScript Menu supports its alignment in either vertical or horizontal orientation.


Multi-level nesting

Menu in JavaScript supports multi-level nested items. You can browse the sub-menu by hovering or clicking a parent item.

Menu JS with multi level nesting


Integration with other controls

JavaScript Menu can be used with other controls. Adding a menu to other controls only requires simple configuration.


JavaScript Menu Code Example

Easily get started with the JavaScript Menu using a few simple lines of HTML and TS code example as demonstrated below. Also explore our JavaScript Menu Example that shows you how to render and configure a Menu Bar in JavaScript.

<div class="control-section">
    <div class="content-wrapper">
        <div id="menubar">
        </div>
    </div>
</div>
import { loadCultureFiles } from '../common/culture-loader';
import { Menu, MenuItemModel } from '@syncfusion/ej2-navigations';
loadCultureFiles();    
    let menuItems: MenuItemModel[] = [
        {
            text: 'File',
            iconCss: 'em-icons e-file',
            items: [
                { text: 'Open', iconCss: 'em-icons e-open' },
                { text: 'Save', iconCss: 'em-icons e-save' },
                { separator: true },
                { text: 'Exit' }
            ]
        },
        {
            text: 'Edit',
            iconCss: 'em-icons e-edit',
            items: [
                { text: 'Cut', iconCss: 'em-icons e-cut' },
                { text: 'Copy', iconCss: 'em-icons e-copy' },
                { text: 'Paste', iconCss: 'em-icons e-paste' }
            ]
        },
        {
            text: 'View',
            items: [
                {
                    text: 'Toolbars',
                    items: [
                        { text: 'Menu Bar' },
                        { text: 'Bookmarks Toolbar' },
                        { text: 'Customize' },
                    ]
                },
                { text: 'Full Screen' }
            ]
        },
    ];
    new Menu({ items: menuItems }, '#menubar');

Other supported frameworks

The Menu Bar component is also available in Blazor, React, Angular, and Vue frameworks. Check out the different Menu Bar platforms from the links below,


Built-in themes

JavaScript Menu supports built-in themes such as Bootstrap 5, Tailwind CSS, Fluent, high contrast, and more. Users can customize these built-in themes or create new themes to achieve the desired look and feel either by simply overriding SASS variables or using the Theme Studio application.


Web Accessibility

  • Fully supports WAI-ARIA for working with screen readers and assistive devices.
  • Follows WAI-ARIA best practices for implementing keyboard interaction.
  • Based on WCAG 2.0 standards, the UI visual elements such as foreground color, background color, line spacing, text, and images are designed.
  • Supports right-to-left (RTL) text direction for users working in right-to-left languages like Hebrew, Arabic, or Persian.



80+ JAVASCRIPT UI CONTROLS

Frequently Asked Questions

Syncfusion JavaScript Menu provides the following features:

  • Display a multilevel menu with smooth animation that is dockable in the header and footer.
  • Customize menu items for templating or include other controls like Checkbox or Radio Button.
  • Utilize automatic collision detection and handling with submenu flip-and-fit.
  • One of the best JavaScript Menu in the market that offers feature-rich UI to interact with the software.
  • Simple configuration and API.
  • Supports all modern browsers.
  • Expansive learning resources such as demos and documentation to learn quickly and get started with JavaScript Menu.

You can find our JavaScript Menu demo here.

No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue, 5 or fewer developers, and 10 or fewer total employees.

A good place to start would be our comprehensive getting started documentation.

Our Customers Love Us

Having an excellent set of tools and a great support team, Syncfusion reduces customers’ development time.
Here are some of their experiences.

Rated by users across the globe

Transform your applications today by downloading our free evaluation version Download Free Trial

Awards

Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion is proud to hold the following industry awards.

Up arrow icon
Live Chat Icon For mobile