Directory
- Welcome
SideMenu Component
The SideMenu component creates smooth sliding panels that appear from either side of your screen. It’s perfect for mobile navigation, filters, or any secondary content that shouldn’t take up permanent screen space.
Key Features
-
Smooth Animations: Polished sliding transitions with backdrop blur
-
Touch Support: Mobile-friendly interactions
-
Accessibility: Full keyboard and screen reader support
Basic Usage
Add a SideMenu with a trigger button:
<button id="menu-trigger">Open Menu</button><SideMenu side="left" triggerQuery="#menu-trigger"> <nav class="flex flex-col gap-4"> <a href="/home">Home</a> <a href="/about">About</a> <a href="/contact">Contact</a> </nav></SideMenu>
Close menu
In some cases you may want to close the menu when a button is clicked. By default the menu will not close when a button is clicked. You can do this by adding the data-close-side-menu
attribute to the button.
SideMenu Functions API
Methods
const menu = await ready(document.querySelector('side-menu'));
menu.toggle(true); // Show menu
menu.toggle(false); // Hide menu
menu.toggle(); // Toggle menu
Events
// Listen for menu openmenu.addEventListener(SideMenuEventNames.Open, (event) => { const { id } = event.detail; console.log('Menu opened:', id);});
// Listen for menu close
menu.addEventListener(SideMenuEventNames.Close, (event) => { const { id } = event.detail; console.log('Menu closed:', id);});
Side Menu Component Props API
Prop | Type | Default | Description |
---|---|---|---|
side | 'left' | 'right' | left | Position of the menu |
triggerQuery | string | Query selector for the trigger element |
Limited Time Launch Sale
Build stunning websites faster with our AstroJS starter template. Get the SideMenu component and many more UI components ready to use in your next project.
GET 60% OFF!