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.
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.
JavaScript Menu supports its alignment in either vertical or horizontal orientation.
Menu in JavaScript supports multi-level nested items. You can browse the sub-menu by hovering or clicking a parent item.
JavaScript Menu can be used with other controls. Adding a menu to other controls only requires simple configuration.
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');
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,
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.
Syncfusion JavaScript Menu provides the following features:
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 and five or fewer developers.
A good place to start would be our comprehensive getting started documentation.
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.