Layer Menu
Overview
A drill-down menu for any number of levels. Each submenu slides in as a new layer, and going back plays the same transition in reverse.
Features
Zero dependencies
Plain JavaScript, no jQuery, no icon fonts. About 4 KB minified + gzip.
Plain markup
A nested <ul>, so it works with any CMS, including WordPress.
12 transitions + your own
Built on the Web Animations API. Pass any keyframes to design a custom one.
Smooth height
The menu box resizes between short and long levels.
Accessible
Arrow keys, Home / End, Escape, focus management, prefers-reduced-motion.
Opens the current page
Starts on the level that contains aria-current="page" or .current-menu-item
Buy with confidence
6mo
Support included
Extendable to 12 months
∞
Lifetime updates
No renewals or subscriptions
✓
Reviewed
Quality-checked by Envato
Specifications
Highlights
Browsers
Files included
Changelog
2.0.0Latest · Oct 7, 2026 Show changelogHide changelog
-
2.0.0 Latest
- New
blur,stack,flipanimations,none, custom keyframes,LayerMenu.animationsregistry - Newsmooth height (
autoHeight),clip,showTitle,{parent}inbackText - New
openActive(opens the current page's level), keyboard navigation, focus management, ARIA, reduced motion - New
open,back,reset,update,level,path, events, data-attribute auto-init, TypeScript definitions - NewBEM class names with the
vlt-prefix, SCSS source with!defaultvariables
- New